实际上,由于必要,我正在用basic C模拟面向对象编程。为了方便起见,我希望使用宏或内联函数来减少需要编写的代码量。对于我的400多个变量,每个变量都需要一个像
这样的结构int x;
int get_x(){
return x;
}
void set_x(int a){
x = a;
}
我希望有一些聪明的方法来写这个宏在线程序,这样我就可以输入类型foo(x)
,它会用所有的代码替换它。我认为,难点在于使用变量x
作为字符串,以便可以在函数标题中使用。
有没有C语言大师以前遇到过这种事情?
#define MAKE_OOP_VAR(var_type, var_name)
var_type var_name;
var_type get_##var_name() { return var_name; }
void set_##var_name(var_type tmp) { var_name = tmp; }
MAKE_OOP_VAR(int, x);
没有经过编译测试,但我的头。