第一篇:VC++編程經(jīng)驗(yàn)總結(jié)(范文)
VC++編程經(jīng)驗(yàn)總結(jié)
vc++如何實(shí)現(xiàn)遠(yuǎn)程調(diào)試
*假設(shè)調(diào)試機(jī)IP 192.168.0.182 遠(yuǎn)程機(jī)IP 192.168.0.161
*遠(yuǎn)程機(jī)為調(diào)試機(jī)分配權(quán)限,使調(diào)試機(jī)可以使用遠(yuǎn)程桌面登陸到遠(yuǎn)程機(jī)器上(這樣調(diào)試起來方便)。
*調(diào)試機(jī)上安裝visual studio.net 2003
共享調(diào)試機(jī)上的Visual Studio上的遠(yuǎn)程調(diào)試目錄(以我的機(jī)器為例)
C:Program FilesMicrosoft Visual Studio.NET
2003Common7PackagesDebugger
*遠(yuǎn)程機(jī)將上面的共享目錄考貝到本地,比如:d:Debugger
*調(diào)試機(jī)共享要調(diào)試的程序所在目錄,比如:
D:importantcvsrootdv-to-dvdbindebug
*遠(yuǎn)程機(jī)將調(diào)試機(jī)上的目錄影射為本地目錄。比如:Z:
*遠(yuǎn)程機(jī)上以命令行形式執(zhí)行 D:Debuggermsvcmon.exe –tcpip –anyuser
*調(diào)試機(jī)啟動(dòng)vc.打開要調(diào)試的工程。比如dvtodvd.選擇菜單project->properties 選debuging->remote setting
Connection :Remote via TCP/IP(Native only)
Remote machine: 192.168.0.161
Remote Command: z:dvtodvd.exe
*debug->start
*就可以調(diào)試了。
1.如何在Release狀態(tài)下進(jìn)行調(diào)試
Project->Setting=>ProjectSetting 對(duì)話框,選擇Release狀態(tài)。C/C++標(biāo)簽中的Category選General,Optimizations選 Disable(Debug),Debut info選Program Database。在Link標(biāo)簽中選中Generate debug info復(fù)選框。
注:只是一個(gè)介乎Debug和Release的中間狀態(tài),所有的ASSERT、VERIFY都不起作用,函數(shù)調(diào)用方式已經(jīng)是真正的調(diào)用,而不查表,但是這種狀態(tài)下QuickWatch、調(diào)用隊(duì)列跟蹤功能仍然有效,和Debug版一樣。
2.Release和Debug有什么不同
Release版稱為發(fā)行版,Debug版稱為調(diào)試版。
Debug中可以單步執(zhí)行、跟蹤等功能,但生成的可執(zhí)行文件比較大,代碼運(yùn)行速度較慢。Release版運(yùn)行速度較快,可執(zhí)行文件較小,但在其編譯條件下無法執(zhí)行調(diào)試功能。Release 的exe文件鏈接的是標(biāo)準(zhǔn)的MFC DLL(Use MFC in a shared or static dll)。這些DLL在安裝Windows的時(shí)候,已經(jīng)配置,所以這些程序能夠在沒有安裝Visual C++ 6.0的機(jī)器上運(yùn)行。而Debug版本的exe鏈接了調(diào)試版本的MFC DLL文件,在沒有安裝Visual C++6.0的機(jī)器上不能運(yùn)行,因?yàn)槿毕鄳?yīng)的DLL,除非選擇use static dll when link。
3.ASSERT和VERIFY有什么區(qū)別
ASSERT里面的內(nèi)容在Release版本中不編譯,VERIFY里面的內(nèi)容仍然翻譯,但不再判斷真假。所以后者更安全一點(diǎn)。
例如ASSERT(file.Open(strFileName))。
一旦到了Release版本中,這一行就忽略了,file根本就不Open()了,而且沒有任何出錯(cuò)的信息。如果用VERIFY()就不會(huì)有這個(gè)問題。
4.Workspace和Project之間是什么樣的關(guān)系
每個(gè)Workspace可以包括幾個(gè)project,但只有一個(gè)處于Active狀態(tài),各個(gè)project之間可以有依賴關(guān)系,在project的Setting..中可以設(shè)定,比如那個(gè)Active狀態(tài)的project可以依賴于其他的提供其函數(shù)調(diào)用的靜態(tài)庫。
5.如何在非MFC程序中使用ClassWizard
在工程目錄下新建一個(gè)空的.RC文件,然后加入到工程中就可以了。
6.如何設(shè)置斷點(diǎn)
按F9在當(dāng)前光標(biāo)處增加一個(gè)斷點(diǎn)和取消一個(gè)斷點(diǎn)。
另外,在編輯狀態(tài)下,按Ctrl+B組合鍵,彈出斷點(diǎn)設(shè)置對(duì)話框。然后單擊【Condition…】按鈕彈出設(shè)置斷點(diǎn)條件的對(duì)話框進(jìn)行設(shè)置。
7.在編輯狀態(tài)下發(fā)現(xiàn)成員變量或函數(shù)不能顯示提示是如何打開顯示功能
這似乎是目前這個(gè)Visual C++ 6.0版本的一個(gè)bug,可按如下步驟使其正常,如再出現(xiàn),可如法炮制:
(1)關(guān)閉Project
(2)刪除“工程名.ncb”文件
(3)重新打開工程
8.如何將一個(gè)通過ClassWizard生成的類徹底刪除
首先在工作區(qū)的FileView中選中該類的.h和.cpp文件,按delete刪除,然后在文件管理器中將這兩個(gè)文件刪除,再運(yùn)行ClassWizard,這時(shí)出現(xiàn)是否移走該類的提示,選擇remove就可以了。
9.如何將在workspace中消失的類找出來
打開該類對(duì)應(yīng)的頭文件,然后將其類名隨便改一下,這個(gè)時(shí)候工作區(qū)就會(huì)出現(xiàn)新的類,再將這個(gè)類改回原來的名字就可以了。
10.如何清除所有的斷點(diǎn)
菜單【Edit】->【Breakpoints…】,打開“Breakpoints”對(duì)話框,單擊【Remove All】按鈕即可??旖萱I是“Ctrl + Shift + F8”。
11.如何再ClassWizard中選擇未列出的信息
打開“ClassWizard”對(duì)話框,然后切換到“Class Info”頁面。改變“Message filter”,如選擇“Window”,“Message”頁面就會(huì)出現(xiàn)Window的信息。
12.如何檢測(cè)程序中的括號(hào)是否匹配
把光標(biāo)移動(dòng)到需要檢測(cè)的括號(hào)前面,按快捷鍵“Ctrl + ]”。如果括號(hào)匹配正確,光標(biāo)就跳到匹配的括號(hào)處,否則光標(biāo)不移動(dòng),并且機(jī)箱喇叭還會(huì)發(fā)出一聲警告。
13.如何查看一個(gè)宏(或變量、函數(shù))的定義
把光標(biāo)移動(dòng)到要查看的一個(gè)宏上,就比如說最常見的DECLARE_MAP_MESSAGE上按一下F12(或右鍵菜單中的相關(guān)菜單),如果沒有建立瀏覽文件,就會(huì)出現(xiàn)提示對(duì)話框,按【確定】按鈕,然后就會(huì)跳到該宏(或變量、函數(shù))定義的地方。
14.如何添加Lib文件到當(dāng)前工程
單擊菜單【Project】->【Settings…】彈出“Project Setting”對(duì)話框,切換到“Link”標(biāo)簽頁,在“Object/library modules”處輸入Lib文件名稱,不同的Lib之間用空格格開。
15.如何快速刪除項(xiàng)目下的Debug文件夾中臨時(shí)文件
在工作區(qū)的FileView視圖中選中對(duì)應(yīng)的項(xiàng)目,單擊右鍵彈出菜單,選擇【Clean(selection only)】菜單即可。
16.如何快速生成一個(gè)現(xiàn)有工程除了工程名外完全相同的新工程
在新建工程的“New”對(duì)話框中選擇“Custom Appwizard”項(xiàng),輸入新工程的名字,單擊
【OK】按鈕。出現(xiàn)“Custom AppWizard”項(xiàng),輸入新工程的名字,單擊【OK】按鈕。出現(xiàn)“Custom AppWizard-Step 1 of 2”對(duì)話框,選擇“An existing Project”項(xiàng),單擊
【Next】按鈕。出現(xiàn)“Custom AppWizard-Step 2 of 2”對(duì)話框,選擇現(xiàn)有工程的工程文件名,最后單擊【Finish】按鈕。編譯后就生成一個(gè)與現(xiàn)有工程相同但可以重新取名的工程AppWizard。
現(xiàn)在就可以項(xiàng)用MFC AppWizard一樣用這個(gè)定制的向?qū)?。如果不想用了,可以在Visual C++ 6.0安裝目錄下CommonMSDev98Template目錄中刪除該Wizard對(duì)應(yīng)的.awx和.pdb文件。
17.如何解決Visual C++ 6.0不正確連接的問題
情景:明明改動(dòng)了一個(gè)文件,卻要把整個(gè)項(xiàng)目全部重新編譯鏈接一次。剛剛鏈接好,一運(yùn)行,又提示重新編譯鏈接一次。
這是因?yàn)槌霈F(xiàn)了未來文件(修改時(shí)間和創(chuàng)建時(shí)間比系統(tǒng)時(shí)間晚)的緣故。可以這樣處理:找到工程文件夾下的debug目錄,將創(chuàng)建和修改時(shí)間都比系統(tǒng)時(shí)間的文件全部刪除,然后再從新“Rebuild All”一次。
18.引起LNK2001的常見錯(cuò)誤都有哪些
遇到的LNK2001錯(cuò)誤主要為:unresolved external symbol “symbol”
如果鏈接程序不能在所有的庫和目標(biāo)文件內(nèi)找到所引用的函數(shù)、變量或標(biāo)簽,將產(chǎn)生此錯(cuò)誤信息。
一般來說,發(fā)生錯(cuò)誤的原因有兩個(gè):一是所引用的函數(shù)、變量不存在,拼寫不正確或者使用錯(cuò)誤;其次可能使用了不同版本的鏈接庫。以下是可能產(chǎn)生LNK2001錯(cuò)誤的原因:
<1>由于編碼錯(cuò)誤導(dǎo)致的LNK2001錯(cuò)誤
(1)不相匹配的程序代碼或模塊定義(.DEF)文件導(dǎo)致LNK2001。例如,如果在C++源文件了內(nèi)聲明了一變量“var1”,卻試圖在另一個(gè)文件內(nèi)以變量“var1”訪問改變量。
(2)如果使用的內(nèi)聯(lián)函數(shù)是在.cpp文件內(nèi)定義的,而不是在頭文件內(nèi)定義將導(dǎo)致LNK2001錯(cuò)誤。
(3)調(diào)用函數(shù)時(shí)如果所用的參數(shù)類型和頭函數(shù)聲明時(shí)的類型不符將會(huì)產(chǎn)生LNK2001錯(cuò)誤。
(4)試圖從基類的構(gòu)造函數(shù)或析構(gòu)函數(shù)中調(diào)用虛擬函數(shù)時(shí)將會(huì)導(dǎo)致LNK2001錯(cuò)誤。
(5)要注意函數(shù)和變量的可公用性,只有全局變量、函數(shù)是可公用的。靜態(tài)函數(shù)和靜態(tài)變量具有相同的使用范圍限制。當(dāng)試圖從文件外部方位任何沒有在該文件內(nèi)聲明的靜態(tài)變量時(shí)將導(dǎo)致編譯錯(cuò)誤或LNK2001錯(cuò)誤。
<2>由于編譯和聯(lián)機(jī)的設(shè)置而造成的LNK2001錯(cuò)誤
(1)如果編譯時(shí)使用的是/NOD(/NODERAULTLIB)選項(xiàng),程序所需要的運(yùn)行庫和MFC時(shí)將得到又編譯器寫入目標(biāo)文件模塊,但除非在文件中明確包含這些庫名,否則這些庫不會(huì)被鏈接進(jìn)工程文件。這種情況下使用/NOD將導(dǎo)致LNK2001錯(cuò)誤
(2)如果沒有為wWinMainCRTStartup設(shè)定程序入口,在使用Unicode和MFC時(shí)將出現(xiàn)“unresolved external on _WinMain@16”的LNK2001錯(cuò)誤信息。
(3)使用/MD選項(xiàng)編譯時(shí),既然所有的運(yùn)行庫都被保留在動(dòng)態(tài)鏈接庫之內(nèi),源文件中對(duì)“func”的引用,在目標(biāo)文件里即對(duì)“__imp__func”的引用。如果試圖使用靜態(tài)庫LIBC.LIB或LIBCMT.LIB進(jìn)行鏈接,將在__imp__func上發(fā)生LNK2001錯(cuò)誤。如果不使用/MD選項(xiàng)編譯,在使用MSVCxx.LIB鏈接時(shí)也會(huì)發(fā)生LNK2001錯(cuò)誤。
(4)使用/ML選項(xiàng)編譯時(shí),如用LIBCMT.LIB鏈接會(huì)在_errno上發(fā)生LNK2001錯(cuò)誤。
(5)當(dāng)編譯調(diào)試版的應(yīng)用程序時(shí),如果采用發(fā)行版模態(tài)庫進(jìn)行鏈接也會(huì)產(chǎn)生LNK2001錯(cuò)誤;同樣,使用調(diào)試版模態(tài)庫鏈接發(fā)行版應(yīng)用程序時(shí)也會(huì)產(chǎn)生相同的錯(cuò)誤。
(6)不同版本的庫和編譯器的混合使用也能產(chǎn)生問題,因?yàn)樾掳娴膸炖锟赡馨缦鹊陌姹緵]有的符號(hào)和說明。
(7)在不同的模塊中使用內(nèi)聯(lián)和非內(nèi)聯(lián)的編譯選項(xiàng)能夠?qū)е翷NK2001錯(cuò)誤。如果創(chuàng)建C++庫時(shí)打開了函數(shù)內(nèi)聯(lián)(/Ob1或/Ob2),但是在描述該函數(shù)的相應(yīng)頭文件里卻關(guān)閉了函數(shù)內(nèi)聯(lián)(沒有inline關(guān)鍵字),只是將得到錯(cuò)誤信息。為避免該問題的發(fā)生,應(yīng)該在相應(yīng)的頭文件中用inline關(guān)鍵字標(biāo)志為內(nèi)聯(lián)函數(shù)。
(8)不正確的/SUBSYSTEM或ENTRY設(shè)置也能導(dǎo)致LNK2001錯(cuò)誤。
19.如何調(diào)試一個(gè)沒有源碼的exe文件調(diào)用的dll
在Visual C++ 6.0中,進(jìn)入“Project Setting”對(duì)話框然后選擇Debug標(biāo)簽頁。通常Visual Studio默認(rèn)“executable for debug session”為可執(zhí)行文件名,但可以將他改成任何你想要的程序。甚至可以指定不同的工作目錄以及傳遞參數(shù)到你的程序。這個(gè)技術(shù)常用來調(diào)試Dlls、名字空間擴(kuò)展、COM對(duì)象和其他從某些EXE以及從第三方的EXE中調(diào)用的plug-in程序。
20.Visual C++ 6.0工程中的項(xiàng)目文件都表示什么
.opt:工程關(guān)于開發(fā)環(huán)境的參數(shù)文件。如工具條位置等信息。
.aps(AppStudio File)資源輔助文件,二進(jìn)制格式,一般不用去管它。
.clw:ClassWizard信息文件,實(shí)際上是INI文件格式,有興趣可以研究一下。有時(shí)候ClassWizard出了問題,手工修改CLW文件可以解決。如果此文件不存在的話,每次用ClassWizard的時(shí)候回提示是否重建。
.dsp(DevelopStudio Project):項(xiàng)目文件,文本格式,不過不熟悉的不要手工修改。.dsw(DevelopStudio Workspace):是工作區(qū)文件,其他特點(diǎn)和.dsp差不多。
.plg:是編譯信息文件,編譯時(shí)的error和warning信息文件(實(shí)際上是一個(gè)html文件),一般用處不大。在單擊菜單【Tool】->【Option】彈出的對(duì)話框里面有個(gè)選項(xiàng)可以控制這個(gè)文件的生成。
.hpj(Help Project):是生成幫助文件的工程,用microsoft Help Compiler可以處理。.mdp(Microsoft DevStudio Project):是舊版本的項(xiàng)目文件,如果要打開此文件的話,會(huì)提示你是否轉(zhuǎn)換成新的.dsp格式。
.bsc:是用于瀏覽項(xiàng)目信息的,如果用Source Brower的話就必須有這個(gè)文件。如果不用這個(gè)功能的話,可以在Project Options里面去掉Generate Browse Info File,這樣可以加快編譯速度。
.map是執(zhí)行文件的映象信息記錄文件,除非對(duì)系統(tǒng)底層,這個(gè)文件一般用不著。.pch(Pre-Compiled File):是與編譯文件,可以加快編譯速度,但是文件非常大。
.pdb(Program Database):記錄了程序有關(guān)的一些數(shù)據(jù)和調(diào)試信息,在調(diào)試的時(shí)候可能有用。
.exp:只有在編譯DLL的時(shí)候才會(huì)生成,記錄了DLL文件的一些信息,一般也沒有用。.ncb:無編譯瀏覽文件(no compile browser)。當(dāng)自動(dòng)完成功能出問題時(shí)可以刪除此文件。編譯工程后會(huì)自動(dòng)生成。
第二篇:數(shù)控編程經(jīng)驗(yàn)總結(jié)
一、刀路的總則:
開粗:在機(jī)床的最大負(fù)荷下,絕大部分情況應(yīng)選用盡可能大的刀,盡可能大的的進(jìn)刀量,盡可能快的進(jìn)給。在同一把刀的情況下,進(jìn)給與進(jìn)刀量成反比。一般情況下,機(jī)床的負(fù)荷不是問題,選刀的原則主要依產(chǎn)品的二維角與三維弧是否過小來考慮。選好刀后,便定刀長(zhǎng),原則是刀長(zhǎng)大于加工深度,大工件則要考慮夾頭是否有干涉。光刀:光刀的目的是為了達(dá)到滿足工件表面光潔度、預(yù)留適當(dāng)余量的加工要求。同樣,光刀選用盡可能大的刀,盡可能快的時(shí)間,因?yàn)榫缎枰^長(zhǎng)的時(shí)間,用最合適的進(jìn)刀與進(jìn)給。在同一進(jìn)給下橫向進(jìn)刀越大越快,曲面進(jìn)刀量與加工后的光潔度有關(guān),進(jìn)給的大小與曲面的外表形狀有關(guān),在不傷及面的情況下,留最小的余量、用最大的刀、最快的轉(zhuǎn)速、適當(dāng)?shù)倪M(jìn)給。
二、裝夾方法:
1、所有的裝夾都是橫長(zhǎng)豎短。
2、虎鉗裝夾:裝夾高度不應(yīng)低于10個(gè)毫米,在加工工件時(shí)必須指明裝夾高度與加工高度。加工高度應(yīng)高出虎鉗平面5毫米左右,目的是保證牢固性,同時(shí)不傷及虎鉗。此種裝夾屬一般性的裝夾,裝夾高度還與工件大小有關(guān),工件越大,則裝夾高度相應(yīng)增大。
3、夾板裝夾:夾板用碼仔碼在工作臺(tái)上,工件用螺絲鎖在夾板上,此種裝夾適用于裝夾高度不夠及加工力較大的工件,一般中大型工件,效果比較好。
4、碼鐵裝夾:在工件較大、裝夾高度不夠,又不準(zhǔn)在底部鎖縲絲時(shí),則用碼鐵裝夾。此種裝夾需二次裝夾,先碼好四角,加工好其它部分,然后再碼四邊,加工四角。二次裝夾時(shí),不要讓工件松動(dòng),先碼再松。也可以先碼兩邊,加工另兩邊。
5、刀具的裝夾:直徑10mm以上,裝夾長(zhǎng)度不低于30mm;直徑10mm以下,裝夾長(zhǎng)度不低于20mm。刀具的裝夾要牢固,嚴(yán)防撞刀與直接插入工件。
三、刀具的分類及其適用范圍:
1、按材質(zhì)分:
白鋼刀:易磨損,用于銅公及小鋼料開粗。鎢鋼刀:用于清角(特別是鋼料)及光刀。合金刀:類似于鎢鋼刀。紫刀:用于高速切削,不易磨損。
2、按刀頭分:
平底刀:用于平面及直身側(cè)面,清平面角。球刀:用于各種曲面中光、光刀。
牛鼻刀(有單邊、雙邊及五邊):用于鋼料開粗(R0.8、R0.3、R0.5、R0.4)。粗皮刀:用于開粗,注意余量的留法(0.3)。
3、按刀桿分:
直桿刀:直桿刀適用各種場(chǎng)合。
斜桿刀:但不適用于直身面及斜度小于桿斜度的面。
4、按刀刃分:
兩刃、三刃、四刃,刃數(shù)越多,效果越好,但做功越多,轉(zhuǎn)速及進(jìn)給相應(yīng)調(diào)整,刃數(shù)多壽命長(zhǎng)。
5、球刀與飛刀光刀的區(qū)別:
球刀:凹面尺小于球尺,平面尺小于球R時(shí),光不到(清不到底角)。
飛刀:優(yōu)點(diǎn)是能清底角。相同參數(shù)的比較:V=R*ω轉(zhuǎn)速快許多(飛刀),力大光出的東西亮,飛刀較多地用于等高外形,有時(shí)用飛刀不需中光。缺點(diǎn)是凹面尺寸及平面尺小于飛刀直徑時(shí)光不到。
四、CNC配合電火花加工,銅公的做法:
1、什么情況下需要做銅公:
刀完全下不去要做銅公,在一個(gè)銅公中還有下不去的,形狀是凸出需再分。刀能下去,但易斷刀的也需做銅公,這需根據(jù)實(shí)際情況而定。要求火花紋的產(chǎn)品需做銅公。銅公做不成的,骨位太薄太高,易損公且易變形,加工中變形與打火花變形,此時(shí)需鑲件。
銅公加工出的東西表面(特別是曲面會(huì)很順很均勻)能克服精鑼中的許多問題與繪圖中的許多問題。要求精確外形或余量多時(shí)必須做粗銅公。
2、銅公的做法:
選出要做銅公的面,補(bǔ)全該補(bǔ)的面,或延長(zhǎng)該延的面,保證銅公的所有邊緣大于要打的邊緣同時(shí)不傷及其它產(chǎn)品的面,去掉不必要的清不到的平面角(與平面角相交處是更深的膠位),補(bǔ)成規(guī)則形狀;找出銅公最大外形,用一邊界然后投影到托面;定出基準(zhǔn)框大小,剪掉掉托面,到此銅公圖基本完成;備料:長(zhǎng)*寬*高,長(zhǎng)與寬≥Ymax與Xmax為基準(zhǔn)框?qū)嶋H銅料的長(zhǎng)寬必須大于圖上基準(zhǔn)框。高≥銅公的理論尺寸+基準(zhǔn)框高+裝夾高度。
五、圖紙定數(shù)問題:
1、在沒有現(xiàn)成的加工面下,平面四面分中,中心對(duì)原點(diǎn),頂面對(duì)零,頂面不平時(shí)(銅公而言)留0.1的余量,即碰數(shù)時(shí),實(shí)際對(duì)(z),圖上偏低0.1。
2、當(dāng)有現(xiàn)成的加工面時(shí),使圖上的現(xiàn)成面對(duì)0(z),平面能分中則分中,否則以現(xiàn)成邊碰數(shù)(單邊)加工面則要校核實(shí)際高度,寬,長(zhǎng)與圖紙差別,按實(shí)際的料來編程。一般情況,先加工成圖上的尺寸再加工圖上形狀。
3、當(dāng)要多個(gè)位加工時(shí),第一個(gè)位(標(biāo)準(zhǔn)位),就要把其它幾個(gè)位的基準(zhǔn)鑼好,長(zhǎng)寬高都要鑼,所有下一次加工基準(zhǔn)要以上次已加工好的面為準(zhǔn)。
4、鑲件的定位:放在整體里面,把下面墊起一定高度然后圖紙也升高此高度,平面按整體分中,高度按圖下面用鏍絲鎖??;是方方正正的則可直分中;粗略一點(diǎn)可用最大外形分中;割一夾具,按夾具分中,鑲件圖與夾具的相對(duì)位置確定然后把圖紙?jiān)c(diǎn)放在夾具中心點(diǎn)。
六、開粗的刀路選擇:
1、曲面挖槽:
關(guān)鍵是范圍的選擇與面的選擇,刀路加工的區(qū)域是以所選范圍內(nèi)所選面為終止面,從最高點(diǎn)到最低點(diǎn)刀具能下得去的所有地方為原則。所選面最好是全體面,邊界則只能是所要加工的區(qū)域,無面處延伸小于半個(gè)刀徑的距離,因?yàn)槠渌媪粲凶銐蛴嗔克宰詣?dòng)保護(hù);最好延伸最低線,因?yàn)樽畹吞幱幸粋€(gè)R鑼不到。
刀的選擇:如刀具不能螺旋或斜線進(jìn)刀時(shí)或加工不到的區(qū)域進(jìn)不了刀的區(qū)域封起,留待二次開粗。光刀之前,一定要把未開粗的區(qū)域全部開粗,特別是小角,其中包括二維角,三維角及封起來的區(qū)域,不然則會(huì)斷刀。
二次開粗:一般用三維挖槽選范圍,平底刀,能用平面挖槽與外形刀路的則用。在不傷及其它面的情況下刀具中心到所選邊界,一般不精修邊界,用快速雙向角度視情況而定,螺旋進(jìn)刀,角度1.5度,高1,當(dāng)挖槽形狀為條形,不能螺旋下刀則用斜線進(jìn)刀,一般打開過濾,特別是曲面開粗,進(jìn)刀平面不可低,以免撞刀,安全高度不可低。
退刀:一般不用相對(duì)退刀,用絕對(duì)退刀,當(dāng)沒有島嶼時(shí)則用相對(duì)退刀。
2、平面挖槽:銑各種平面,凹平槽,當(dāng)銑部分開放式平面時(shí),則需定邊界,原則能進(jìn)刀(大于一個(gè)刀徑),開放處偏外大于半個(gè)刀徑,封閉外圍。
3、外形:當(dāng)所選平面適合外形分層,則用外形分層提刀(平面外形),提刀點(diǎn)與下刀點(diǎn)為一點(diǎn)時(shí),不須提刀z平面一般提刀,盡量不用相對(duì)高度;補(bǔ)正方向一般右補(bǔ)正(順刀)。
4、機(jī)械補(bǔ)正的刀路設(shè)置:補(bǔ)正號(hào)為21,改電腦補(bǔ)正機(jī)械補(bǔ)正,進(jìn)刀為垂直進(jìn)刀,刀過不了的地方則改大R不留余量。
5、等高外形:適合于走封閉式的面,走開放式的面若是四圈則要封項(xiàng)面,若是四圈內(nèi)或非四圈則要選范圍與高度(一定弧形進(jìn)刀開粗),用于開粗的情況:任一平面內(nèi)的加工距離小于一個(gè)刀徑,若大于一個(gè)刀徑則要用更大的刀或兩次等高外形。
6、曲面流線:具有最好的均勻性與干脆性,適合光刀很多時(shí)候可取代等高外形。
7、放射刀路:適合中間有大孔的情況(少用)。注意事項(xiàng):彈刀,刀不鋒利,刀過長(zhǎng),工件過深時(shí)要環(huán)繞走不可上下走;工件中的利角兩邊的面要分兩個(gè)刀路,不可越過去,光刀時(shí)的邊緣最好延長(zhǎng)(用弧線進(jìn)退刀)。
七、清角:
1、這里的清角清的是二維死角,是前面工序都未曾走到的部分,如光刀需走到的地方則應(yīng)先清角再光刀,太小大深的角可分幾把刀清,不要用小刀清太多地方。
2、清三維角:開一些小槽,一些三維轉(zhuǎn)角處。
3、易斷刀,一定要考慮像細(xì)刀、過長(zhǎng),加工量過大(主要是z向,深度方向)的情況。
4、刀路:用二維外形走,只能清小角(R0.8)及二維平面角;用平行刀路;用等高外形;有一種地方刀子去不了的曲面及外形走不到的死角則要先封起來起刀,最后清角,大面中的小缺口一般先封起來。
八、中光:
1、中光:作為曲面的鋼料與細(xì)公才中光。
2、原則:大刀開粗時(shí)層與層間的余量較多,為使光刀時(shí)得到更好效果的一道工序,3、特點(diǎn):快速清除,大刀飛刀亦可,大進(jìn)給,大間距;不必顧忌表面質(zhì)量;平面的工件不必中光;等高外形的工件不用中光,等高外形開粗時(shí)可細(xì)一點(diǎn)把兩道工序放在一起,細(xì)一點(diǎn)指表面余量與層與層的距離;需不需中光,還有一個(gè)重要因素是工作的材料,材料越硬,則考慮中光;中光的加工方向與光刀開粗最好相對(duì)這樣加工的東西會(huì)效果好,均勻。
九、光刀:
光刀是要達(dá)到各種產(chǎn)品與模具的裝配要求所以要非常慎重,根據(jù)不同的要求給予不同的刀路設(shè)置與參數(shù)設(shè)置。
1、光刀的下刀高度與最后高度都改為0,公差設(shè)計(jì)1個(gè)絲以內(nèi),不需過濾(工件越小公差越小,公差影響外型)。
2、前模與分型面要達(dá)到最好的光潔度,后模可次,其它非配合及避空位可粗糙點(diǎn)。
3、刀路設(shè)計(jì)由以下因素決定:
具體外形(如平面與其它面),陡峭面與平坦曲面。兩面之間是否利角(利角則分開)。兩部分是否要求不同(要不要留余量,余量的多少,光潔度的要求不同)。光刀中保護(hù)面問題是個(gè)大問題,對(duì)已加工好的面一定要預(yù)到加工中的誤差保護(hù)起來,按保護(hù)面的要求保護(hù)起來。范圍保護(hù),不計(jì)誤差的0保護(hù),高度范圍與平面范圍;保護(hù)面保護(hù)。
刀路的延長(zhǎng)問題:光刀中,刀路加工到邊緣時(shí)最好作圓弧進(jìn)退刀否則事先把面稍加延長(zhǎng)。
光刀中的提刀問題:提刀浪費(fèi)時(shí)間,所以盡量避免提刀。方法1:設(shè)提刀間隙(小缺口)
方法2:封面,把提刀處封起來(小缺口)方法3:避開間隙(大缺口處)
方法4:等高外形時(shí)延長(zhǎng)到同一高度,光刀中的進(jìn)刀問題,第一刀進(jìn)刀一定要從工件外進(jìn),避免振動(dòng)及碰傷工件,所有光刀一定設(shè)進(jìn)刀。刀具的磨損問題:當(dāng)工件較大時(shí),需多把刀光完同一工件。
第三篇:熱血Vc++
Ying--2012-9-3
第一章 基礎(chǔ)構(gòu)建平臺(tái)
一.Vc++項(xiàng)目文件
.dsp 整個(gè)工程的項(xiàng)目文件
我需要手動(dòng)添加.h(c++的頭文件,一般是類的聲明文件)和.cpp(c++的源文件,是類的函數(shù)定義和整個(gè)程序?qū)崿F(xiàn)文件)
二. C++的輸入輸出
cin 和 >> 配合使用,cout 和 << 配合使用
由于cout 和cin 定義在頭文件 iostream.h 中。編寫程序是需要此文件包含在程序中。體現(xiàn)為#include “iostream.h”
三. C++的面向?qū)ο蟮木幊?/p>
類的關(guān)鍵詞class
對(duì)象是類的一個(gè)實(shí)例,就像int和 i 的關(guān)系
構(gòu)造函數(shù)和析構(gòu)函數(shù)(需要熟悉!)
1.析構(gòu)函數(shù)加 ~ ; 析構(gòu)函數(shù)實(shí)現(xiàn)和構(gòu)造函數(shù)相反的功能。
2.友元函數(shù)不是類的成員函數(shù),而是獨(dú)立于當(dāng)前類的外部函數(shù),但它可以訪問該類的所有成員。(程序中如非必要,應(yīng)盡量減少友元的使用);使用時(shí),需要在函數(shù)名or 前面加friend
四. mfc和windows 編程基礎(chǔ)
1.mfc是微軟的基礎(chǔ)類庫,其核心是以C++類的形式封裝了 windows的 API(application program interface 應(yīng)用程序接口)函數(shù)。
2.c++的控制臺(tái)程序中,每一個(gè)程序的入口程序是main()函數(shù),同樣在windows 程序中也有一個(gè)入口程序,即winmain()函數(shù),其功能:
a.注冊(cè)窗口類。建立窗口及做一些初始化工作
b.進(jìn)入消息循環(huán),接受消息并進(jìn)行處理
c. 當(dāng)檢索到退出消息時(shí),銷毀窗口,推出程序并進(jìn)行掃尾工作。
第二篇可視化程序設(shè)計(jì)
一.對(duì)話框應(yīng)用程序設(shè)計(jì)
a.
二. 單文檔和多文檔
三.Windows標(biāo)準(zhǔn)控件的應(yīng)用
四.菜單、工具欄和狀態(tài)欄設(shè)計(jì)
五.Windows圖形處理和文本輸入輸出
第三章 windows編程篇
一.文件操作
二.注冊(cè)表和INI文件
三.DLL動(dòng)態(tài)鏈接庫
四.多線程編程
第四章 VC++開發(fā)篇
一.?dāng)?shù)據(jù)庫應(yīng)用程序設(shè)計(jì)
二.網(wǎng)絡(luò)編程
三.多媒體編程
第五章 實(shí)例篇
一.圖書管理系統(tǒng)的實(shí)現(xiàn)
二.簡(jiǎn)單郵件客戶端實(shí)現(xiàn)
三.媒體播放器的實(shí)現(xiàn)
第四篇:《VC++程序設(shè)計(jì)》教學(xué)大綱
《Visual C++與面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
課程編號(hào):
課程類型:計(jì)算機(jī)科學(xué)
學(xué) 時(shí):48(其中講課32,機(jī)時(shí)16)學(xué) 分:3 適用對(duì)象:計(jì)算機(jī)及理科的全部或部分專業(yè) 先修課程:計(jì)算機(jī)文化基礎(chǔ) 使用教材及參考書:
《Visual C++與面向?qū)ο蟪绦蛟O(shè)計(jì)(第二版)》,呂軍等,高教出版社,2003年8月 《Visual C++與面向?qū)ο蟪绦蛟O(shè)計(jì)》,劉路放,高教出版社
一、課程的性質(zhì)、目的及任務(wù)
“Visual C++程序設(shè)計(jì)”是面向計(jì)算機(jī)類各專業(yè)的必修計(jì)算機(jī)類專業(yè)基礎(chǔ)課程。該課程介紹基本的程序設(shè)計(jì)技術(shù),包括結(jié)構(gòu)化程序設(shè)計(jì)方法(SP)、面向?qū)ο蟮某绦蛟O(shè)計(jì)方法(OOP)以及使用Visual C++和MFC開發(fā)WINDOWS應(yīng)用程序的技術(shù)。通過本課程的學(xué)習(xí),使學(xué)生掌握現(xiàn)代程序設(shè)計(jì)的基本理論和方法,能用Visual C++進(jìn)行基本的WINDOWS應(yīng)用程序設(shè)計(jì)。
本課程的重點(diǎn)在培養(yǎng)學(xué)生的實(shí)際應(yīng)用軟件開發(fā)能力.二、教學(xué)基本要求
通過本課程的學(xué)習(xí),在結(jié)構(gòu)化程序設(shè)計(jì)方法和面向?qū)ο蟮某绦蛟O(shè)計(jì)方法的基本理論研究WINDOWS應(yīng)用程序開發(fā)和MFC編程能力方面達(dá)到以下基本要求:
1.熟悉計(jì)算機(jī)程序的基本組成要素,包括數(shù)據(jù)類型、程序流程、函數(shù)和指針等基本概念; 2.理解結(jié)構(gòu)化程序設(shè)計(jì)方法(SP)的理論,掌握“自頂向下,逐步求精”的程序設(shè)計(jì)技術(shù),可設(shè)計(jì)含有分支、循環(huán)和模塊(函數(shù))的程序; 3.掌握C++的基本流程控制;
4.理解類、對(duì)象、封裝、繼承和多態(tài)性等面向?qū)ο蟪绦蛟O(shè)計(jì)(OOP)概念,掌握基本的面向?qū)ο蟪绦蛟O(shè)計(jì)方法;
5.理解WINDOWS的消息機(jī)制和WINDOWS應(yīng)用程序的基本結(jié)構(gòu);
6.掌握MFC的基本概念,窗口、資源、圖形設(shè)備接口、文檔/視圖結(jié)構(gòu)、對(duì)話框和控件等對(duì)象的程序設(shè)計(jì)方法,Visual Studio中的AppWizard、ClassWizard、資源編輯器和調(diào)試器等工具的方法,可用Visual C++開發(fā)基本的WINDOWS應(yīng)用程序。
三、教學(xué)內(nèi)容及要求
1.Developer Stadio集成開發(fā)環(huán)境
主要內(nèi)容:軟件開發(fā)、算法、程序的基本知識(shí);C++程序的基本要素以及Visual C++的集成開發(fā)環(huán)境使用初步。
基本要求:了解C++程序的基本特點(diǎn), 熟悉Visual C++集成開發(fā)環(huán)境的基本使用方法。2.控制結(jié)構(gòu)
主要內(nèi)容:結(jié)構(gòu)化程序設(shè)計(jì)方法的基本思想以及C++的基本控制結(jié)構(gòu)和控制轉(zhuǎn)移語句。基本要求:掌握結(jié)構(gòu)化程序設(shè)計(jì)方法的基本思想和C++的幾種基本控制轉(zhuǎn)移語句,熟悉使用偽代碼的編程方法。3.?dāng)?shù)據(jù)類型
主要內(nèi)容:C++的基本數(shù)據(jù)類型以及常數(shù)、變量和數(shù)組的使用方法。
基本要求:掌握幾種基本數(shù)據(jù)類型, 包括字符型、整型、長(zhǎng)整型、浮點(diǎn)和雙精度數(shù)據(jù)類型的基本概念, 以及常數(shù)、變量和數(shù)組的使用方法。4.表達(dá)式
主要內(nèi)容:介紹C++的表達(dá)式和表達(dá)式語句?;疽螅菏炀氄莆眨?+的各種表達(dá)式, 特別是賦值表達(dá)式及其他有副作用的表達(dá)式。5.函數(shù)
主要內(nèi)容:介紹C++函數(shù)的定義、聲明和調(diào)用方法。
基本要求:熟練掌握C++函數(shù)的編寫和調(diào)用方法,以及內(nèi)聯(lián)函數(shù)、函數(shù)重載和遞歸函數(shù)的概念。
6.指針與引用
主要內(nèi)容:介紹C++中指針和引用的基本概念。
基本要求:理解和掌握指針的基本概念,以及指針型變量的聲明方法、怎樣通過指針類型的變量去訪問某個(gè)變量或數(shù)組元素的值;引用的概念和用法。7.類與對(duì)象
主要內(nèi)容:介紹面向?qū)ο蟪绦蛟O(shè)計(jì)方法的基本原理以及類和對(duì)象的概念。
基本要求:掌握面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,類和對(duì)象的概念,以及類的聲明方法和對(duì)象的引用。
8.繼承與多態(tài)性
主要內(nèi)容:介紹類的繼承與派生、虛函數(shù)和運(yùn)算符重載等面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念?;疽螅荷钊肜斫饷嫦?qū)ο蟪绦蛟O(shè)計(jì)方法的基本思想,包括封裝、繼承和多態(tài)性及其在C++中的實(shí)現(xiàn)方法。
9.WINDOWS應(yīng)用程序的特點(diǎn)
主要內(nèi)容:介紹WINDOWS編程的基本思想和MFC程序框架的基本結(jié)構(gòu)。
基本要求:理解WINDOWS的基本編程思想,特別是其消息傳遞機(jī)制,弄清MFC程序的組成及各部分的作用。10.圖形設(shè)備接口
主要內(nèi)容:介紹Windows的圖形設(shè)備接口(GDI)和MFC的圖形對(duì)象。
基本要求:了解圖形設(shè)備接口的概念,掌握畫筆、畫刷和字體的用法,以及邏輯坐標(biāo)和設(shè)備坐標(biāo)的概念。11.資源
主要內(nèi)容:介紹資源的概念以及圖標(biāo)、位圖、菜單、工具欄和狀態(tài)欄等資源的編程方法?;疽螅赫莆誅eveloper Studio的各種資源編輯器的用法,能在應(yīng)用程序中添加圖標(biāo)、位圖、菜單和工具條等資源并進(jìn)行相應(yīng)的編程工作。12.文檔視圖結(jié)構(gòu)
主要內(nèi)容:介紹MFC的文檔/視圖程序結(jié)構(gòu)。
基本要求:理解文檔/視圖結(jié)構(gòu),可在AppWizard生成的應(yīng)用程序框架的基礎(chǔ)上添加必要的代碼,以生成自己的應(yīng)用程序。13.序列化與文檔打印
主要內(nèi)容:介紹在文檔/視圖結(jié)構(gòu)中文檔讀寫的基本手段——序列化,以及文檔打印的編程技術(shù)。
基本要求:理解序列化的基本思想和MFC的打印工作流程,可編寫相應(yīng)的處理程序。14.對(duì)話框與控件 主要內(nèi)容:介紹對(duì)話框和控件的概念,以及常用控件的使用方法和基于對(duì)話框的應(yīng)用程序編程。
基本要求:理解對(duì)話框、對(duì)話框模板和控件的概念,掌握常用控件的使用方法以及基于對(duì)話框的應(yīng)用程序開發(fā),以及數(shù)據(jù)交換和驗(yàn)證機(jī)制,可編寫使用對(duì)話框的應(yīng)用程序。
四、實(shí)驗(yàn)環(huán)節(jié)
實(shí)驗(yàn)
一、Visual Studio集成環(huán)境及C++程序的輸入、調(diào)試和運(yùn)行(4學(xué)時(shí),分2次完成)實(shí)驗(yàn)
二、面向?qū)ο蟪绦蛟O(shè)計(jì)(4學(xué)時(shí),分2次完成)
實(shí)驗(yàn)
三、基本W(wǎng)INDOWS應(yīng)用程序編程(4學(xué)時(shí),分2次完成)實(shí)驗(yàn)
四、文檔/視圖結(jié)構(gòu)程序設(shè)計(jì)(2學(xué)時(shí),分1次完成)實(shí)驗(yàn)
五、對(duì)話框應(yīng)用程序設(shè)計(jì)(2學(xué)時(shí),分1次完成)
五、學(xué)時(shí)分配表
說明:本課程為實(shí)行“精講多練”教學(xué)改革的課程, 重視實(shí)驗(yàn)環(huán)節(jié).本課程分為16個(gè)教學(xué)單元, 每單元3學(xué)時(shí), 兩學(xué)時(shí)授課, 1學(xué)時(shí)上機(jī)實(shí)驗(yàn).授課采用有聯(lián)機(jī)大屏幕投影的電化教學(xué)手段進(jìn)行.序號(hào) 內(nèi) 容 分配學(xué)時(shí)數(shù) Developer Stadio集成開發(fā)環(huán)境
控制結(jié)構(gòu)數(shù)據(jù)類型
表達(dá)式
函數(shù)指針與引用類與對(duì)象
繼承與多態(tài)性WINDOWS應(yīng)用程序的特點(diǎn)
圖形設(shè)備接口
資源文檔視圖結(jié)構(gòu)序列化與文檔打印對(duì)話框與控件
總計(jì)
2 2 2 2 2 2 2 2 2 2 4 2 4 32
考核方法: 筆試
2004年12月
第五篇:Vc++程序設(shè)計(jì)課程教學(xué)大綱
《VC++程序設(shè)計(jì)》課程教學(xué)大綱
總學(xué)時(shí):54
學(xué)分:3 理論學(xué)時(shí):34
實(shí)驗(yàn)學(xué)時(shí):20 面向?qū)I(yè):計(jì)算機(jī)科學(xué)與技術(shù)課程代碼:2710015 先開課程:數(shù)據(jù)結(jié)構(gòu)、C語言、面向?qū)ο蟪绦蛟O(shè)計(jì)課程性質(zhì):選修 執(zhí)筆人:張磊審定人:陳龍猛、于仁師 第一部分:理論教學(xué)部分
一、說明
1、課程的性質(zhì)、地位和任務(wù)
《VC++程序設(shè)計(jì)》最重要的任務(wù)是發(fā)展學(xué)生的智力,即編程、上機(jī)調(diào)試能力,具體到教學(xué)內(nèi)容上則是重在使學(xué)生掌握理論教學(xué)中的重點(diǎn)和難點(diǎn),對(duì)VC++語言的編程技巧能熟練掌握,提高自身的編程能力,加強(qiáng)素質(zhì)教育。注重從事理論研究、實(shí)驗(yàn)工作的能力和嚴(yán)謹(jǐn)?shù)目茖W(xué)作風(fēng)的培養(yǎng),提倡創(chuàng)新精神。
2、課程教學(xué)和教改基本要求
本課程主要講解Visual C++6.0的語法結(jié)構(gòu)、體系結(jié)構(gòu)、各種組件,以及微軟在Visual C++6.0中推出的各種新技術(shù)。通過本課程的學(xué)習(xí),使學(xué)生熟悉采用面向?qū)ο缶幊陶Z言進(jìn)行Windows 可視化開發(fā),掌握面向?qū)ο蟮木幊趟枷?,熟悉面向?qū)ο缶幊痰南㈨憫?yīng)。
本課程主要采用多媒體教室講課,講課與上機(jī)實(shí)驗(yàn)相結(jié)合,并輔以實(shí)際應(yīng)用案例、常見問題分析等,鞏固所學(xué)內(nèi)容,基本要求如下:(1)掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念(2)熟悉Visual C++集成開發(fā)環(huán)境
(3)掌握Visual C++語言的基本內(nèi)容、常用的算法
(4)理解WINDOWS的消息機(jī)制和WINDOWS應(yīng)用程序的基本結(jié)構(gòu)
(5)掌握MFC的基本概念,窗口、資源、圖形設(shè)備接口、文檔/視圖結(jié)構(gòu)、對(duì)話框和控件等對(duì)象的程序設(shè)計(jì)方法
(6)可用Visual C++開發(fā)基本的WINDOWS應(yīng)用程序
二、教學(xué)內(nèi)容與課時(shí)分配
第一章
Visual c++概述(學(xué)時(shí)數(shù):1)
本章將重點(diǎn)介紹Visual c++的總體功能和特點(diǎn),具體講述Visual c++6.0版的安裝過程,并詳細(xì)介紹。教學(xué)內(nèi)容:
1、Visual c++開發(fā)環(huán)境、Visual c++向?qū)?、Visual c++應(yīng)用程序環(huán)境。
2、Visual c++安裝過程。
3、Visual c++菜單欄、Visual c++工具欄、Visual c++工作區(qū)、Visual c++資源編輯器。本章重點(diǎn)難點(diǎn):Visual c++6.0版開發(fā)環(huán)境的熟悉
建議教學(xué)方法:先講解主要知識(shí)點(diǎn),再通過多媒體演示達(dá)到教學(xué)效果。思考題
1、Visual c++的安裝有什么要求?
2、Visual c++的幫助文件如何安裝?
3、簡(jiǎn)單描述Visual c++開發(fā)環(huán)境?
第二章使用Visual c++創(chuàng)建控制臺(tái)程序(學(xué)時(shí)數(shù):2)
本章主要通過一個(gè)具體實(shí)例——“Hello World”程序,演示Visual c++開發(fā)環(huán)境下建立一個(gè)控制臺(tái)程序的完整過程。教學(xué)內(nèi)容:
1、創(chuàng)建“Hello world”程序的基本步驟。
2、創(chuàng)建控制臺(tái)程序的輸入、輸出。
3、熟悉控制臺(tái)程序句柄與I/O。
4、解析控制臺(tái)程序窗口。
本章重點(diǎn)難點(diǎn):Visual c++6.0版開發(fā)環(huán)境的熟悉
建議教學(xué)方法:先講解主要知識(shí)點(diǎn),再通過實(shí)例講解進(jìn)行鞏固 思考題
1、如何控制自定義控制臺(tái)程序的輸入、輸出?
2、如何讀取控制臺(tái)程序中的文字與背景?
3、如何在控制臺(tái)窗口的指定部位寫入指定的字符信息? 第三章使用Visual c++創(chuàng)建windows應(yīng)用程序(學(xué)時(shí)數(shù):2)
本章將傳統(tǒng)Windows應(yīng)用程序和以MFC為基礎(chǔ)的Windows應(yīng)用程序作比較,并詳細(xì)介紹應(yīng)用程序向?qū)У氖褂梅椒ê蚔isual c++的消息系統(tǒng)及其消息映射機(jī)制。教學(xué)內(nèi)容:
1、簡(jiǎn)介傳統(tǒng)windows程序。
2、概述Visual c++中windows程序。
3、介紹如何使用向?qū)蓱?yīng)用程序。
4、介紹如何使用Visual c++中的消息與命令。
本章重點(diǎn)難點(diǎn):如何使用向?qū)蓱?yīng)用程序、如何使用Visual c++中的消息與命令。建議教學(xué)方法:知識(shí)點(diǎn)的詳細(xì)講解,結(jié)合例子。思考題
1、使用Windows API編程與使用MFC編程有什么區(qū)別?
2、用戶如何定義消息?
3、簡(jiǎn)述MFC消息映射的機(jī)制?
第四章
windows可執(zhí)行程序的基本類型(學(xué)時(shí)數(shù):2)
本章主要介紹Visual c++的三種應(yīng)用程序類型:對(duì)話框應(yīng)用程序、單文檔應(yīng)用程序和多文檔應(yīng)用程序。詳細(xì)闡述Windows系統(tǒng)對(duì)話框的類型及其在Visual c++的制作方法。教學(xué)內(nèi)容:
1、對(duì)話框應(yīng)用程序的制作。
2、文檔應(yīng)用程序的制作。
本章重點(diǎn)難點(diǎn):多文檔應(yīng)用程序的制作
建議教學(xué)方法:知識(shí)點(diǎn)講解,多媒體實(shí)例演示。思考題
1、Windows程序有幾種類型?
2、如何創(chuàng)建和使用非模式對(duì)話框?
3、文檔、視圖與文檔模板的關(guān)系是什么? 第五章
windows標(biāo)準(zhǔn)控件的使用(學(xué)時(shí)數(shù):3)本章主要介紹Windows中的幾種常用控件表頭控件、圖像列表控件、列表控件、樹控件、標(biāo)簽控件、進(jìn)度條控件等及其在Visual c++的實(shí)現(xiàn)方法 教學(xué)內(nèi)容:
1、如何使用表頭控件。
2、如何使用圖像列表控件。
3、如何使用列表控件。
4、如何使用樹控件。
5、如何使用標(biāo)簽控件。
6、如何使用進(jìn)度條控件。
7、如何使用滑動(dòng)條控件。
8、如何使用狀態(tài)條控件。
本章重點(diǎn)難點(diǎn):各個(gè)控件的具體使用方法和用途 建議教學(xué)方法:知識(shí)點(diǎn)講解,多媒體實(shí)例演示。思考題
1、如何繪制ListCtrl和TreeCtrl中Item的背景顏色?
2、如何在對(duì)話框中使用控件與在普通的窗口中使用控件有什么不同?
3、應(yīng)用控件表頭控件、圖像列表控件、列表控件、樹控件、標(biāo)簽控件等創(chuàng)建一個(gè)簡(jiǎn)單的應(yīng)用程序?
第六章使用Visual c++編寫多媒體程序(學(xué)時(shí)數(shù): 4)本章主要介紹如何在Visual c++中實(shí)現(xiàn)圖像、聲音、視頻等多媒體應(yīng)用程序的制作。教學(xué)內(nèi)容:
1、介紹幾種多媒體數(shù)據(jù)格式
2、位圖操作方法
3、多媒體控制實(shí)現(xiàn)方法。
4、簡(jiǎn)介DirectX編程
本章重點(diǎn)難點(diǎn):多媒體數(shù)據(jù)格式、多媒體控制實(shí)現(xiàn)方法 建議教學(xué)方法:知識(shí)點(diǎn)的重點(diǎn)講解,多媒體實(shí)例演示。思考題
1、如何在對(duì)話框中顯示位圖?
2、編寫一段程序,實(shí)現(xiàn)播放MIDI的功能?
3、DirectDraw與GDI編程有什么區(qū)別?
第七章使用Visual c++編寫數(shù)據(jù)庫程序(學(xué)時(shí)數(shù): 4)本章主要介紹Visual c++中三種主要的訪問數(shù)據(jù)庫的方法:使用ODBC訪問數(shù)據(jù)庫、使用DAO訪問數(shù)據(jù)庫、使用ADO訪問數(shù)據(jù)庫。教學(xué)內(nèi)容:
1、如何使用ODBC訪問數(shù)據(jù)庫。
2、如何使用DAO訪問數(shù)據(jù)庫。
3、如何使用ADO訪問數(shù)據(jù)庫。
4、說明ODBC與DAO的常用類
本章重點(diǎn)難點(diǎn):使用ODBC、ADO訪問數(shù)據(jù)庫 建議教學(xué)方法:知識(shí)點(diǎn)的重點(diǎn)講解,同類的對(duì)比 思考題
1、如何配置ODBC數(shù)據(jù)源,使用MFC如何配置數(shù)據(jù)源?
2、使用DAO可以打開SQL Server數(shù)據(jù)庫嗎?
3、試使用DAO實(shí)現(xiàn)如下功能:創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表、然后實(shí)現(xiàn)數(shù)據(jù)庫程序的增、刪、改、查的功能?
第八章使用Visual c++編寫網(wǎng)絡(luò)應(yīng)用程序(學(xué)時(shí)數(shù):4)本章主要介紹如何使用Visual c++編寫對(duì)網(wǎng)絡(luò)進(jìn)行操作的程序。教學(xué)內(nèi)容:
1、Winsock編程技術(shù)簡(jiǎn)介、示例演示。
2、WinInet編程技術(shù)簡(jiǎn)介、示例演示。本章重點(diǎn)難點(diǎn):WinInet編程技術(shù)
建議教學(xué)方法:知識(shí)點(diǎn)講解,實(shí)例演示相結(jié)合。思考題
1、如何編寫程序?qū)崿F(xiàn)“ping”的功能?
2、試使用CAsyncSocket類和派生CSocket類,編寫不同主機(jī)的通訊程序?
3、試使用MFC編寫FTP程序,并能夠?qū)崿F(xiàn)斷點(diǎn)續(xù)傳功能? 第九章使用Visual c++編寫動(dòng)態(tài)鏈接庫程序(學(xué)時(shí)數(shù):4)本章重點(diǎn)講解如何使用Visual c++編寫動(dòng)態(tài)鏈接庫程序。教學(xué)內(nèi)容:
1、動(dòng)態(tài)鏈接庫類型和生成。
2、如何使用動(dòng)態(tài)鏈接庫。
本章重點(diǎn)難點(diǎn):動(dòng)態(tài)鏈接庫的生成、如何使用動(dòng)態(tài)鏈接庫。建議教學(xué)方法:知識(shí)點(diǎn)講解。思考題
1、創(chuàng)建導(dǎo)出函數(shù)的方法有幾種?
2、.LIB文件和.DLL文件有什么聯(lián)系?功能是什么?
3、DLL的調(diào)用方式有幾種,有什么區(qū)別?
第十章使用Visual c++編寫多線程程序
(學(xué)時(shí)數(shù):3)本章主要介紹兩種建立線程的方法:線程間通訊和線程同步。教學(xué)內(nèi)容:
1、如何編寫多線程程序。
2、如何實(shí)現(xiàn)線程通訊。
3、如何實(shí)現(xiàn)線程同步。
本章重點(diǎn)難點(diǎn):編寫多線程程序。
建議教學(xué)方法:知識(shí)點(diǎn)的講解與多媒體演示教學(xué)結(jié)合 思考題
如何定義線程的優(yōu)先級(jí)?
如何知道一個(gè)線程的運(yùn)行情況? 如何實(shí)現(xiàn)線程同步?
第十一章
COM編程簡(jiǎn)介
(學(xué)時(shí)數(shù):3)本章簡(jiǎn)單介紹COM編程的基本概念和方法。教學(xué)內(nèi)容:
1、介紹COM的基本概念。
2、概述COM編程。
3、創(chuàng)建COM程序
本章重點(diǎn)難點(diǎn):介紹如何創(chuàng)建COM程序。思考題
1、COM與ActiveX有什么區(qū)別與聯(lián)系?
2、COM組建最基本的接口是什么?
3、簡(jiǎn)述COM對(duì)象的生成與銷毀過程
第十二章
Visual c++的調(diào)試技術(shù)
(學(xué)時(shí)數(shù):2)本章將簡(jiǎn)單介紹Visual c++的調(diào)試技術(shù)。教學(xué)內(nèi)容:
1、講解Visual c++的基本調(diào)試技巧。
2、介紹TRACE和ASSERT的使用。
本章重點(diǎn)難點(diǎn):Visual c++的基本調(diào)試技巧。建議教學(xué)方法:多媒體演示教學(xué) 思考題
1、編寫一個(gè)簡(jiǎn)單程序,使用調(diào)試器在匯編級(jí)別跟蹤它的運(yùn)行情況?
2、斷言的使用有什么優(yōu)點(diǎn)?有幾種斷言宏?
3、如何觀察程序是否有資源泄漏?
三、本課程考核方式、方法
本課程理論部分采用筆試方式,共100分:閉卷考試,占60%;上機(jī)實(shí)驗(yàn)占20%;平日作業(yè)占10%,出勤占10%。第二部分:實(shí)驗(yàn)教學(xué)部分
一、說明
1、本門課程實(shí)驗(yàn)的性質(zhì)任務(wù)、目的與要求
實(shí)驗(yàn)是本課程教學(xué)的一個(gè)非常重要的環(huán)節(jié),采取上機(jī)的形式進(jìn)行。本實(shí)驗(yàn)課程的教學(xué)目標(biāo)是使學(xué)生通過20課時(shí)的上機(jī)實(shí)驗(yàn),認(rèn)識(shí)并學(xué)會(huì)VC++集成環(huán)境的基本使用,掌握計(jì)算機(jī)程序的編輯,編譯、調(diào)試和運(yùn)行的一系列操作步驟和方法,理解并消化課堂中學(xué)到的理論知識(shí),鍛煉分析解決問題的能力。初步掌握計(jì)算機(jī)編程及調(diào)試技術(shù),為今后計(jì)算機(jī)應(yīng)用在本專業(yè)領(lǐng)域打下良好的基礎(chǔ)。
基本要求:熟悉Visual C++的集成開發(fā)環(huán)境、掌握編程步驟、Visual C++語言基礎(chǔ),能用該開發(fā)工具設(shè)計(jì),編寫簡(jiǎn)單、實(shí)用的應(yīng)用程序。
2、本門課程實(shí)驗(yàn)項(xiàng)目設(shè)置情況 序號(hào)
實(shí)驗(yàn)名稱
學(xué)時(shí)
必開
選開
實(shí)驗(yàn)類型
內(nèi)容提要
驗(yàn) 證
基本 操作
綜 合設(shè) 計(jì)
應(yīng) 用
創(chuàng) 新
VC++語言使用 環(huán)境 √
√
VC集成環(huán)境及應(yīng)用程序創(chuàng)建初步
Visual C++簡(jiǎn)單程序初步設(shè)計(jì)
√
√
建立簡(jiǎn)單的Visual C++應(yīng)用程序
Windows標(biāo)準(zhǔn)控件的使用 √
√
熟悉Windows中的幾種常用控件及其在Visual c++中的實(shí)現(xiàn)
編寫多媒體程序 √
√
熟悉在Vc++中實(shí)現(xiàn)圖像、聲音、視頻等多媒體應(yīng)用程序的制作
Visual c++中訪問數(shù)據(jù)庫的主要方法 √
√
熟悉VC++中三種主要訪問數(shù)據(jù)庫的方法并學(xué)會(huì)創(chuàng)建
網(wǎng)絡(luò)應(yīng)用程序的編寫 √
√
學(xué)會(huì)使用Vc++編寫對(duì)網(wǎng)絡(luò)進(jìn)行操作的程序
動(dòng)態(tài)鏈接庫程序的編寫 √
√
學(xué)會(huì)使用Vc++編寫動(dòng)態(tài)鏈接庫程序
Visual c++的調(diào)試
√
√
熟悉并掌握Visual c++的基本調(diào)試技巧
二、各實(shí)驗(yàn)項(xiàng)目教學(xué)要求。
1.實(shí)驗(yàn)?zāi)康模簩W(xué)習(xí)操作使用,理解消化理論知識(shí),理論聯(lián)系實(shí)際,掌握可視化面向?qū)ο蟪绦虻脑O(shè)計(jì)、編輯、調(diào)試、運(yùn)行等基本技能,強(qiáng)化程序設(shè)計(jì)思想,培養(yǎng)分析問題解決問題的能力。2.所需儀器設(shè)備及材料:Pentium以上微機(jī),Windows98以上操作系統(tǒng),安裝Visual C++ 6.0.3.實(shí)驗(yàn)步驟:
開機(jī)啟動(dòng)編輯運(yùn)行環(huán)境; 建立工程; 程序設(shè)計(jì); 存盤調(diào)試運(yùn)行;
重復(fù)步驟(3)-(5); 關(guān)閉系統(tǒng)。
4.問題討論,編寫實(shí)驗(yàn)報(bào)告等; 5.各項(xiàng)實(shí)驗(yàn)內(nèi)容
VC++語言使用環(huán)境:熟悉Visual C++及其開發(fā)環(huán)境;初步了解運(yùn)行一個(gè)C++及Visual C++程序的過程。
Visual C++簡(jiǎn)單程序初步:進(jìn)一步熟悉Visual C++語言環(huán)境;明確Visual C++語言程序的結(jié)構(gòu),掌握Visual C++語言程序的書寫格式。
Windows標(biāo)準(zhǔn)控件的使用:掌握Windows中的幾種常用控件表頭控件、圖像列表控件、列表控件、樹控件、標(biāo)簽控件、進(jìn)度條控件等及其在Visual c++的實(shí)現(xiàn)方法。
編寫多媒體程序:了解多媒體數(shù)據(jù)格式,掌握實(shí)現(xiàn)圖像、聲音、視頻等多媒體應(yīng)用程序的制作的方法。
Visual c++中訪問數(shù)據(jù)庫的主要方法:掌握Visual c++中三種主要的訪問數(shù)據(jù)庫的方法:使用ODBC訪問數(shù)據(jù)庫、使用DAO訪問數(shù)據(jù)庫、使用ADO訪問數(shù)據(jù)庫的方法。
網(wǎng)絡(luò)應(yīng)用程序的編寫:掌握如何使用Visual c++編寫對(duì)網(wǎng)絡(luò)進(jìn)行操作的程序的方法。動(dòng)態(tài)鏈接庫程序的編寫:了解并掌握動(dòng)態(tài)鏈接庫的生成、如何使用動(dòng)態(tài)鏈接庫。Visual c++的調(diào)試:了解并掌握使用Visual c++的基本調(diào)試技巧。
三、考核方式和成績(jī)?cè)u(píng)定要求等。
根據(jù)實(shí)驗(yàn)報(bào)告和結(jié)果進(jìn)行評(píng)定,實(shí)驗(yàn)成績(jī)占總成績(jī)的20%。第三部分:建議使用的教材和參考書目 [1] 《Visual C++6.0教程》,于濤等編著, 2002,科學(xué)出版社。