C++의 클래스 내에 클래스 객체의 동적 배열을 만드는 데 문제가 있습니다. 개념은 다음과 같습니다. 우리는 클래스 A를 가지고 있다고 가정합니다.이 클래스에서는 동일한 유형의 클래스 (예 : A * 배열)의 객체 배열을 가지려고합니다.이 객체의 메모리는 동적으로 할당됩니다 (우리는 처음에이 배열의 크기). main()
에서 2 개의 객체 배열을 만들고 싶습니다. 첫 번째 클래스에는 A 클래스의 세 요소가있는 배열이 있고 두 번째 요소에는 여섯 요소가있는 배열이 있습니다. 따라서 모든 객체는 고유 한 배열을가집니다. 여기에 내 생각은 다음과 같습니다C++에서 클래스 내부에 클래스 객체의 동적 배열을 만듭니다.
기본 개념 :
class A {
A* array;
public:
A(int k) {
//array = new A[k]; //this doesn't work because it calls the default constructor.
int i;
for (i = 0; i < k; i++)
array = new A(k); //This doesn't work either.
cout << "A created." << endl;
};
~A() {
cout << "Destroying A!" << endl;
}
};
int main() {
A *ar[2];
for (i = 0; i < 2; i++) {
if(i == 0) {
ar[i] = new A(3);
} else {
ar[i] = new A(6);
}
}
return 0;
}
|_|_|_| //Array with 3 elements of class A in object A
| _____ |_|_|_|_|_|_| //Array with 6 elements of class A in object B
| |
|A||B| //Basic array with 2 elements
'std :: vector 'period를 사용하십시오! –
해답을 보내 주셔서 감사합니다. 벡터가 최상의 구현이지만이 프로젝트는 사용이 허가되지 않은 프로젝트입니다. – Vkt678
'std :: vector'는 무한 재귀 문제를 해결하지 못합니다. 둥지를 어디에서 멈출 수 있습니까? –