1

という名前のクラスを作成してCircleおり、その「親」Circleインスタンスにアクセスするにはパブリック プロパティが必要です。したがって、次のようにコーディングします。

class Circle {
public:
...
    Circle parent;
...
}

しかし、これは私にエラーを与えました:Incomplete type is not allowed

私は何をすべきか?

4

2 に答える 2

4

それはできません。型のメモリ フットプリントがどうなるかを考えてみましょう: aCircleには a が含まれているCircleため、そのサイズは inner よりも小さくすることはできませんがCircle、そのサイズは outer のサイズと同じでありCircle、矛盾に達します。

おそらく、ポインターまたはスマートポインターを保存するつもりでしたか?ポインターのサイズはコンパイラーによって認識されているため、これは許可されます。

于 2012-11-28T13:10:28.027 に答える
0

親をへのポインタとして定義する必要がありますCircle

Circle *parent;
于 2012-11-28T13:10:18.187 に答える