One Definition Ruleについて読んでいました。次のように述べています。
1 つの .cpp ファイルがstruct S { int x;を定義している場合。}; もう 1 つの .cpp ファイルはstruct S { int y;を定義します。}; 、それらをリンクするプログラムの動作は未定義です。これは通常、名前のない名前空間で解決されます。
未定義の理由と方法がわかりませんか?誰かがこの背後にある実際の理由を説明してくれますか? 名前のない名前空間でどのように解決されますか?