다음과 같이 구조체를 정의했습니다. 청크 정의 std :: 구조체의 벡터 정의
extern int x;
a = 1;
b = 2;
x = a*b;
struct bStruct
{
unsigned long Cycles;
unsigned long Time;
std::vector<unsigned long> Chunks(x);
};
하지만 x
오류 메시지는 다음과 같습니다
변수는 "X"가 아닙니다 유형 이름.
왜이 오류가 발생했으며 어떻게 수정합니까?
std::vector<unsigned long> Chunks(x);
| | |
| | +---Wait a sec huh ? what type is 'x' ??
| |
| +---------Function name Chunks
+----------Return Type std::vector<unsigned long>
당신은 Chunks
이 사용 초기화 할 필요가 데이터 멤버가되고 싶어요 :
을'표준 : : 벡터 <부호 없음 long> 덩어리 (X)는, '당신은 무엇을해야할까요? 벡터의 크기를 x로 설정 하시겠습니까? C++ 98을 사용한다면 하나의'int' 인자를 가진 생성자가 없으며이'std :: vector Chunks (x, 0);를 시도하거나 bStruct의 생성자에서이 벡터를 초기화 할 수 있습니다. –
[book] 얻기 (http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list). StackOverflow를 통해 C++을 배울 수 없습니다. –
도움이되는 의견에 감사드립니다. 나는 그 책들을 조사 할 것이다. – goosli