2010-06-29 7 views
0

나는 이런 식으로 뭔가가있는 경우 : 표준을 따르지 못하고 있습니까?

MyStruct clip; 

clip = {16, 16, 16, 16}; 

I 얻을 컴파일러에서 다음과 같은 경고 : 경고 : -std = C + +0 또는 -std = GNU + +0

에서만 사용할 수 확장 초기화 목록

컴파일러에서 -std = C++ 0x를 사용하면 아무런 경고도 표시되지 않습니다. 그러나 표준을 따르고 있는지 확실하지 않습니다. 그래서 플래그를 비활성화하고 구조의 각 멤버를 개별적으로 초기화해야합니까?

감사합니다.

답변

8

초기화의 경우 MyStruct clip = {16, 16, 16, 16};을 사용할 수 있어야하지만 현재 C++ 표준에서 발견 한대로 대괄호 목록에 할당 할 수 없습니다. C++ 1x에서는 확장 구문을 사용할 수 있습니다.

+0

이 새로운 표준에 대한 정보를 읽어야합니다. http://en.wikipedia.org/wiki/C%2B%2B0x 죄송합니다. xD 어쨌든, 감사합니다 !! – Puyover

관련 문제