C++的源程序改写成C语言类的成员函数和数据成员
2021-04-23 03:30
标签:机制 c中 全局变量 行操作 控制 修饰符 line 指针 结构 C++的源程序改写成C语言类的成员函数和数据成员 标签:机制 c中 全局变量 行操作 控制 修饰符 line 指针 结构 原文地址:https://blog.51cto.com/14863804/2509418
1)对于类的数据成员可以直接转为C中结构体的数据成员。
2)函数则需转化为对应的函数指针,因为struct里不允许出现函数的声明和定义。而函数前如果有virture,inline等修饰符也要去掉,如函数void funca(int a);改为void (funca)(struct B p,int a);大家可以看到函数指针的原型里加了一个指针struct B的指针,这是因为要在函数内部对类的成员进行操作,要靠该指针指定结构体的成员。在类的成员函数里,实际上在参数列里也隐含有一个指向自身的this指针。
3)对于静态成员则要定义成全局变量或全局函数,因为结构体中不能有静态成员。
上一篇:字符串算法~KMP
文章标题:C++的源程序改写成C语言类的成员函数和数据成员
文章链接:http://soscw.com/index.php/essay/78376.html