如何使用C宏/内联函数来使用变量函数名



实际上,由于必要,我正在用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);

没有经过编译测试,但我的头。

相关内容

  • 没有找到相关文章

最新更新