次のような構造体が定義されている場合:
struct blank {
int : 0;
};
コンパイラはこれを実行時にゼロに最適化しますか?
このかなり人気のあるSOの質問のために私は尋ねます。自分のC/C++コードでも同様のコンパイル時チェックを採用したいと思います。プログラムを可能な限り最適化しようとしているので、コンパイル時のチェックにのみ使用する場合は、これらの空の構造体を実行時にぶら下げたくありません。
ちなみに、リンクと同じ結果を達成するためのC ++の慣用的な方法はありますか?