나는 오류가있어? 클래스 오류, 예상; 전 (토큰
왜 이런 일이 어떻게 그것을 해결할 수있다expected ';' before '(' token.
#include <iostream>
class AB {
int n;
AB(int x) { n = x;}
};
class ED {
AB blee(1);
};
나는 오류가있어? 클래스 오류, 예상; 전 (토큰
왜 이런 일이 어떻게 그것을 해결할 수있다expected ';' before '(' token.
#include <iostream>
class AB {
int n;
AB(int x) { n = x;}
};
class ED {
AB blee(1);
};
이 가장 가능성이 잘못된 구문 분석 실패하고 있습니다 :
AB blee(1);
AB
타입의 데이터 멤버를 초기화하려고한다면 그렇게 할 수 없습니다 .C++ 11에서는 다음과 같이 할 수 있습니다 :
AB blee{1};
또는
AB blee = 1;
는 다른 방법으로는
ED
의 생성자 (들)에서 할 수 있습니다. 이것은 C++ 11 및 C++ 03에서 모두 작동합니다.
class ED {
ED() : blee(1) {}
AB blee;
};
AB blee(1);
으로 무엇을하려고합니까? 그것은 함수 선언이나 함수 호출이 아닙니다.
함수를 호출하려면 함수를 호출하려면 ED
멤버의 본문에 넣고 AB
은 그대로두고 blee(1);
으로 남겨 둡니다.
int
) 둘 필요 것, 함수를 선언하려면 :
AB blee(int);
나의 목표는 main 함수'ED object;'를 호출하여 object.blee.n = 1을 만드는 것이었다. – user2085124
:
class ED {
ED() : blee(1) {}
AB blee;
};
C++ 11이없는 경우에만 * 반드시 * 이것을해야한다. – juanchopanza
만약 AB 필기 = 1이면 에러가 발생합니다 : 정수 타입이 아닌 AB 형의 정적 데이터 멤버 인 AB 타입이 유효하지 않습니다. – user2085124
@ user2085124 C++ 11을 지원합니까? – juanchopanza
GCC가 아니라 DevC++에서 컴파일 중이므로 – user2085124