#include <iostream>
#include <vector>
class A
{
public:
std::vector<A> v;
public:
A() {}
};
#include <iostream>
#include <vector>
class A
{
public:
std::vector<A> v;
public:
A() {}
};
编译能通过。不过这么设计可能需要考虑更周全。把自身指针放入容器里vector<A*>情况很常见,但是直接放对象vector<A>不常见。