編譯階段對**進行預處理,簡單的替換,不會進行安全檢查
巨集的名字大寫,使用const代替巨集,使用內聯函式代替巨集函式關於#define 和ifdefine
關於\和#和##
巨集延續運算子(\)
字串常量化運算子(#)
標記貼上運算子(##)模板函式語法
template <>
() 模板類語法
template <>
class ;模板的預設引數
template 強大的stl庫就是使用模板寫的哦
//// main.cpp
// use_define_template
//// created by bikang on 16/10/25.
// copyright (c) 2023年 bikang. all rights reserved.
//#include
#define pi 3.1416
#define square(x) x * x
#define square2(x) \
(x) * (x)
#define max(x,y) ( (x) > (y)?(x):(y))
//#和##
#define showdata(n) (cout
t tmpsub(t x, t y)
template
class mytempclass ;
t& getval();
private:
t val;
};int main(int argc, const char * ar**)
void tdeftmp(){
cout << "test tmp"< mt2;
string str1 = "hello cpp";
mt2.setval(str1);
cout << mt.getval()<
Appdelegate h和 cpp的簡單解析
class private cocos2d bool initialize director初始化導演 類名 成員名 這是靜態成員的使用 這句話是獲取導演物件 導演物件是單例模式 ccdirector pdirector ccdirector shareddirector 獲取繪圖視窗 相當於攝影師...
類模板的 h和 cpp檔案分離
templateclass abc include b.h templatevoid abc setvv t b templatet abc getvv include b.cpp include using namespace std int main abcab ab.setvv 10 cout...
CPP 巨集的字串處理
1 define a line line define b line a line define c int b line c int 行號 2 巨集定義涉及到字串連線 字串化 則引數 line 不繼續展開 define b line line define c int b line c int l...