struct X
{
int a;
int b;
};
int f(X x)
{
return x.a + x.b;
}
int main()
{
int n = f({1, 2});
}
비주얼 스튜디오 2012 (11 월 CTP) 보고서 :초기화 프로그램 목록을 인수로 사용할 수없는 이유는 무엇입니까?
error C2664: 'int f(const X &)' : cannot convert parameter 1 from
'initializer-list' to 'X'
Reason: cannot convert from 'initializer-list' to 'X'
Only an initializer-list with zero or one elements can be converted to this type
Build FAILED.
Clang 3.1 및 g ++ 4.7.2는이 코드를 오류없이 컴파일합니다. – soon
그렇다면 VC++의 버그 인 것 같습니다.하지만이 기능을 지원한다고 선언했습니다. – xmllmx
VC++는 다양한 부분에서 깨져있는 것으로 알려져 있습니다. –