您好,登錄后才能下訂單哦!
1) 如何創(chuàng)建和編寫靜態(tài)鏈接庫 2) 如何創(chuàng)建可執(zhí)行文件 3) 如何創(chuàng)建頭文件和cpp文件 4) 如何相對路徑尋址 5) 如何進(jìn)行手動靜態(tài)庫鏈接 6) 如何編譯部分或全部程序
在撰寫Libuv源碼分析時(shí),感覺有些基礎(chǔ)的,通用的背景知識(主要是vc++相關(guān)方面的)還是單獨(dú)列出來,作為一篇bolg吧。
按照Libuv的組織架構(gòu),將整個(gè)程序分成兩個(gè)部分:
1) 一個(gè)簡單的類型為靜態(tài)鏈接庫(.lib)的程序,僅導(dǎo)出一個(gè)函數(shù) void sayHelloWorld(); 用于打印出"hello world!"。 2) 一個(gè)簡單的類型為exe程序,鏈接上面的HelloWorld.lib,并調(diào)用其導(dǎo)出的sayHelloWorld()函數(shù)。
通過這個(gè)簡單的例子,讓我們來探索一下整個(gè)流程和關(guān)鍵點(diǎn)。對于新手來說,請重點(diǎn)關(guān)注c/c++的頭文件和鏈接庫的相對路徑設(shè)置是如何設(shè)置的!
1) 到開你的vistual studio,左側(cè)選擇win32,新建一個(gè)win32/控制臺/空項(xiàng)目
之所以用空項(xiàng)目而不用default設(shè)置的預(yù)編譯頭,是為了簡單期間,使用預(yù)編譯頭雖然加速頭文件編譯,但是需要一些規(guī)則來支持的,因此簡單期間,還是使用空項(xiàng)目,自己手動創(chuàng)建頭文件和cpp文件
生成工程目錄后,只有一些空的文件夾
2) 創(chuàng)建c/c++入口函數(shù)文件main.cpp
3) 打開剛才創(chuàng)建的main.cpp,編寫一個(gè)main函數(shù),按F5快捷鍵,至少讓你寫的c/c++程序運(yùn)行起來
1)在sln解決方案中添加一個(gè)lib類型項(xiàng)目工程
2) 創(chuàng)建頭文件,聲明靜態(tài)鏈接庫要導(dǎo)出的函數(shù)原型
3) 創(chuàng)建cpp文件,include剛才聲明的頭文件,并實(shí)現(xiàn)函數(shù)原型
4) 編譯LibHelloWorld靜態(tài)鏈接庫
5) 編譯生成的目錄位置
1) 在可執(zhí)行exe項(xiàng)目中如何相對路徑尋址
2) 可執(zhí)行文件鏈接如靜態(tài)庫,并調(diào)試運(yùn)行,輸出結(jié)果
1) 如何創(chuàng)建和編寫靜態(tài)鏈接庫 2) 如何創(chuàng)建可執(zhí)行文件 3) 如何創(chuàng)建頭文件和cpp文件 4) 如何相對路徑尋址 5) 如何進(jìn)行手動靜態(tài)庫鏈接 6) 如何編譯部分或全部程序
希望對大家有幫助!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。