질문을하기 전에이 주제가 많이 논의되었지만 다시 한번 대부분의 답변을 살펴보면서 적절한 방법을 찾지 못했다는 사실을 알고 있음을 미리 언급하겠습니다. 내가 원하는 것을 성취해라. (아마 내가 주어진 anwers에서 sth를 놓 쳤기 때문에). 그래서 전역 범위 여야한다는 점에서 벡터의 20 배 크기의 벡터를 생성하고 싶다고합시다 (이 크기는 각각 10 개라고 말합니다). 이것은 클래스 내부에서 이루어 지므로 이러한 벡터의 벡터가 수업).오브젝트 벡터 초기화
for (int i =0; i<20; i++)
vector<A> * vec_of_class = new vector<A>(10);
/*where A is the class and I use new to have them in the heap,
so that they won't be local */
지금, 나는 이것이 내가 그들을 을 처리하고 내가 그들을 삭제 preper 있는지 확인에 추가 자르해야한다는 의미 알고 있지만, 나는 : 그래서, 다음이 유효한 경우 정말 확실하지 않다 내가하는 작업이 유효한지 확실하지 않습니다. 일반적으로 전역 범위에서 사용할 수있는 객체 A의 20 가지 벡터를 초기화하려고합니다 (작업은 다른 클래스의 함수에서 발생합니다). 객체의 벡터 벡터 A,하지만이 작업을 올바르게 수행하는 방법 (다른 클래스의 본문 함수 내에서 객체 A의 20 가지 다른 벡터를 초기화하고 전역 적으로 사용하는 방법)을 찾고 싶습니다. 제 질문은 혼란스럽지 않고 여기에 도움을 줄 수 있기를 바랍니다.
그래, 그게 내가 할 수있는 일이지만, 그럼 어떻게 제대로 할 수 있니? – user3111197
왜 그냥 벡터> vec_of_class (20, 벡터 (10)); –
DimChtz
당신이 다음과 같은 클래스 멤버를 원한다고 생각합니다 :'std :: vector> member {20, std :: vector (10)};'. Et voila, 각각 10 요소의 20 벡터. –