次の2つのC++ヘッダーの場合を考えてみましょう。
ケース1:
class Test {
public:
static int TEST_DATA[];
};
int Test::TEST_DATA[] = { 1, 2, 3, 4 };
ケース2:
class Test {
public:
static int const TEST_DATA[];
};
int const Test::TEST_DATA[] = { 1, 2, 3, 4 };
後者の場合のconstは、自主的なコンパイル時チェックのみですか、それともMac / Linux / Windowsの共有ライブラリレイアウトに影響しますか?
更新:回答によると、コンパイラーはconstのものを読み取り専用ページに配置する場合があります。WindowsのVisualC++またはMacまたはLinuxのGCCは、実際にconstデータを読み取り専用ページに配置しますか?おそらく私は間違った方法でテストしましたが、IntelのMacでは、constバージョンの要素は書き込み可能であるように見えました。