我想知道GCC如何处理C++代码的控制访问(public,private,protected)。编译器(GCC)如何处理C++的访问控制?
例如
class X
{
public:
int a;
void funcA(){};
private:
int b;
void funcB(){};
protected:
int c;
void funcC(){};
};
当然,编译器会做访问控制的第一检查。 但是,我的问题是:
生成汇编代码(.s文件)或目标文件(.o文件)后,私有变量/函数/对象和汇编代码中的公共事物之间有什么区别和ELF文件?
编译期间编译器如何设置代码的控制访问?
在此先感谢!
没什么。访问修饰符仅在前端处理。一旦代码转换成汇编语言或目标代码,这些东西都不再存在了。 –
为什么您认为访问控制出现在编译结果中? –