우리가 기능을 다음했다고 가정 :우리는 향후 C++ 0x 표준에서이 구문에 따라 함수에 인수로 배열을 전달할 수 있습니까?
void someFunction(int * araye){
for (int i=0;i<5;i++)
cout <<araye[i]<<' ';
cout <<'\n';
}
우리는 0X 표준 ++ 곧 C에서, 구문에 따라이 함수에 배열을 전달 할 수 있습니까? :
someFunction({1,2,3,4,5});
그게 사실이라면, 우리는 심지어되는, 배열 요소는 다음과 같은 POD 유형에서 있습니다 어떤 경우에이 구문을 사용할 수 있습니다 :
class Test{
int adad1;
int adad2;
};
void someFunction(Test * araye){
for (int i=0;i<3;i++)
cout <<araye[i].adad1<<'-'<<araye[i].adad2<<' ';
cout <<'\n';
}
someFunction({{1,2},{3,4},{5,6}});
편집 -> 어떤 사람들 후 said :
여러분은 중괄호 사이의 표현식이 기본적으로 initializer_list로 취급되며이 initializer_list에서 포인터를 가져 와서 의도 된 함수로 전달하는 추가 함수를 사용하여 제안 하겠지만이 방법은 나는 내에서 사용할 수있는 해킹을 좋아한다. 그 표현식을 인수로 사용하는 경향이 있다고 말하면서, 의도 한 함수 매개 변수가 단일 포인터이거나 그 표현식을 사용하는 또 다른 접근법이있을 때 그 표현식을 인수로 사용하면 안된다고 생각합니다. .
'char' 배열과 같은'int' 배열을 영원히 치료 한 것은 달콤 할 것입니다 ... –