次のようなことができますか?
#include <iostream>
class Foo
{
public:
Foo() { std::cout << sizeof(*this) << '\n'; }
};
C標準では、次のように表示されます。
ISO/IEC 9899:2011
6.7.2.1 構造体および共用体指定子
8 ... リストを終了する } の直後まで型は不完全であり、その後は完全です。
しかし、C++ 標準では、類似物が見つかりません。
sizeof 演算子は、不完全な型を持つ式には適用されないので、そのようなコードを記述できるかどうか?