c++中類的內聯成員函式的宣告方式包括:顯式宣告和隱式宣告。
將函式體直接放到類體內的宣告方式即為隱式宣告。這種宣告方式簡單。如下:#ifndef point_h_h
#define point_h_h
class point
};#endif
顯式宣告在c++中(visual c++ 2008)正確的使用方式應該如下:
#ifndef point_h_h
#define point_h_h
class point
;#endif
inline float point::getx(void)
#include "point.h"
point::point()
point::point(float a, float b)
float point::gety(void)
注意上面定義方式中,如果把getx函式放到.cpp檔案中定義時,單個檔案進行編譯,vc不會報錯。但是對專案進行編譯時系統將報錯如下:
fatal error lnk1120: 2 unresolved externals
在網上搜尋了很久,似乎沒人遇見過。。。
最後在這個地方找到了答案:感謝testing2007這位仁兄!
隱式內聯函式和顯式內聯函式
讓乙個函式成為內聯函式,隱式的為在類裡定義函式,顯式的則是在函式前加上inline關鍵字說明。inline1.cpp c primary created by amesty on 16 5 11.include include 顯式內聯 include using namespace std cla...
C 中的顯式建構函式
以兩個c 的小例子來說明怎樣通過使用顯式建構函式來防止隱式轉換。class clxcomplex double getreal const double getimage const private double m dreal double m dimage 我們知道,下面的3行 是等價的 clx...
C 中的顯式建構函式
c 中的顯式建構函式 以兩個c 的小例子來說明怎樣通過使用顯式建構函式來防止隱式轉換。class clxcomplex double getreal const double getimage const private double m dreal double m dimage 我們知道,下面的...