安迪豬 發問時間: 電腦與網際網路程式設計 · 1 0 年前

C++語法與Library問題

1. 我想要寫一個簡單的class供自己使用, 請問我該如何開始?如果我是用VC++然後想要生成( name.h name.lib ) 所以任何台電腦擺放在他們vc folder的include和lib就可以使用. (我懂.h是header檔, 但.lib要如何生成...剛觸碰VC++不久, 對IDE也不是很孰, 希望能一步一步教學. 目前只知道簡單的class寫法)

2. 看了一下自己電腦 include 裡面現成的 .h檔, 發現有些語法沒看過, 想請問以下這些語法的意思

#if

// code

#endif

#undef

#define

extern

#pragma

2 個解答

評分
  • 1 0 年前
    最佳解答

    1. 如果想要寫Class, 就不用考慮.lib這種static library, 寫static

    library通常是在寫Function, Function跟Class特性差異很大,

    寫Class可朔性可利用性比較高, 未來還可以在繼承, 加強Clas

    功能等等...

    當然如果你要寫一些常用Function放入library的話也可以, 請用

    Application Wizard, 選擇Win32 Static Library選項來寫就可以.

    其實寫成DLL也不錯, 不見得要寫成Static方式,Dynamic的DLL

    程式不會變得那麼大, 或許更方便一點. 這說起來, 可能會花

    多時間, 去買一本DLL的書來看, 還有一本C++的書吧!

    2. 這些指令都是Complier時期的一些指令.

    舉個例子給你看, 其他自己去看書吧

    #if method = 1

    d = x * x * x;

    #else

    d = pow( x, 3 );

    #endif

    以上面為例, 如果這段程式的前面定義了

    #define method 1

    Complier就會使用 d = x * x * x;

    如果

    #define method 0

    Complier就會使用 d = pow( x, 3 );

    2009-01-20 20:59:45 補充:

    Jacob 大, 因為意見用完了, 無法用意見, 只好用補充來回答你,

    #if , #define ..... 這不叫Preprocessor, Preprocessor只是一個動作,

    這些叫Preprocessor Directives, Preprocessor 還有 mocro, operators...

    Preprocessor 是由這些一大堆所構成, 所以也有Preprocessor的文法.

    2009-01-21 11:32:44 補充:

    對喔! 我眼睛長哪去了, 真是抱歉! Jacob大

    • 登入以對解答發表意見
  • 1 0 年前

    # 開始的,叫 preprocessor 的指令,不叫 compiler 的指令

    2009-01-21 05:39:09 補充:

    我沒說它叫preprocessor 啊!

    我說它叫preprocessor 的指令!

    2009-01-21 19:15:08 補充:

    我 21:30 後就會神志不清!

    你要是看到我21:30以後答的、寫的意見,

    也是常會出錯。

    知道錯會改就好了;只要不要太常犯。

    • 登入以對解答發表意見
還有問題?馬上發問,尋求解答。