巨集定義偷懶型set,get

2022-05-10 20:14:09 字數 750 閱讀 1674

之前看到有這麼乙個寫法

#define def_set_get(vartype,varname,funname)          \

private : vartype varname; \

public : void set##funname(const vartype varname); \

public : const vartype get##funname(void) ;

太偷懶了=。=、、我居然不曉得有這種用法。##表示把funname與set相連成為乙個新的變數。

例如:

#define getname(test) s##test

char *student = "wang er";

printf(getname(tudent));

這裡就相當於直接列印了student。前提是這個student要被定義過。

類似於##的還有#號能將傳入的引數轉化成字串

#define print( n ) printf( "token" #n " = %d\n", game##n )

int token9 = 9;

int game9 = 99;

print(9);

這個會列印 

token9 = 99;

其實還有#@能把引數轉化成字元。不過只有在windows下能用。也就不多說了。新技能get√

巨集定義偷懶型set,get

之前看到有這麼乙個寫法 define def set get vartype,varname,funname private vartype varname public void set funname const vartype varname public const vartype get ...

abs int 巨集定義 巨集定義和巨集方法

巨集定義和巨集方法 定義機型 define is iphone5 uiscreen instancesrespondtoselector selector currentmode cgsizeequaltosize cgsizemake 640,1136 uiscreen mainscreen cu...

C 巨集定義 巨集定義求面積

學過c語言的讀者,對巨集定義應該不陌生,同樣在c 中,也可以用巨集定義命令將乙個指定的識別符號來代表乙個字串,巨集定義的作用一般是用乙個短的名字代表乙個長的字串。一般形式為 define 識別符號 字串定義pi的符號常量 define pi 3.14在c 中還可以用 define命令定義帶引數的巨集...