2017-10-13 11 views
-1

가 :왜 PictureBox를 std :: vector에 저장할 수 없습니까? 나는 이미지의 벡터가 필요 짓고 있어요 충돌 시스템의 경우

vector<PictureBox^> Wall{ Player1,Wall_1,Wall_2 }; 

이 내가 벡터를 인스턴스화 한 방법이다,이 성공적으로 컴파일되지 않습니다.

vector<PictureBox^> Wall; 

아무 것도 추가되지 않으므로 이와 같이 벡터를 인스턴스화 할 수 있습니다.

그리고 내가 처음 인스턴스화로 프로그램을 컴파일 할 때이 내가 얻을 오류 중 일부입니다 ... 나는 그런 목록과 양단 큐와 같은 거의 모든 표준 규격 컨테이너를 시도 enter image description here

만에 만연하지 마라.

아이디어가 있으십니까?

답변

1

표준 C++과 C++/CLI를 함께 사용할 수 없습니다. 유형에 특별한 요구 사항이 있습니다 (예 : 포인터가 가비지 수집 됨). gc-ed 포인터를 저장하려면 특정 컨테이너를 사용해야합니다.

예를 들어, 범용 어레이 List이다 I 참조 아

List<PictureBox^>^ list = gcnew List<PictureBox^>(); 
+0

. 답장을 보내 주셔서 감사합니다. 그러나 나는 아직도 문제가있다. 목록이 정의되지 않았습니다. 헤더가 누락 되었습니까? – DEFAULT

+0

@DEFAULT 그렇게 생각하지 마십시오. 그러나 그것은'Systems :: Collections :: Generic' 네임 스페이스에 있으므로 사용 선언문을 추가 할 수 있습니다. – Rakete1111