Container
のメンバを次のように初期化するには、そのコンストラクタのメンバ初期化リストのContainer
オブジェクトへの参照をそのコンストラクタのメンバ初期化リストに渡しても構いません: (コードはideoneです)。コンストラクタのメンバ初期化リストのオブジェクトへの参照を使用
#include <cstdlib>
#include <iostream>
struct Container;
struct Member
{
Member(Container& container) : m_container(container)
{
}
Container& m_container;
};
struct Container
{
Container() : m_member(*this)
{
}
Member m_member;
};
int main()
{
Container c;
return EXIT_SUCCESS;
}
コードはコンパイルされますが、その標準がわかりません。