我想知道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文件?
編譯期間編譯器如何設置代碼的控制訪問?
在此先感謝!
沒什麼。訪問修飾符僅在前端處理。一旦代碼轉換成彙編語言或目標代碼,這些東西都不再存在了。 –
爲什麼您認爲訪問控制出現在編譯結果中? –