这是这篇文章的副本:Brace Enclosed Initializer List As Function Argument,虽然我正在寻找一种解决方案,只使用C中可用的方法。我正在使用Windows 8编译器。如何将大括号初始化列表作为参数传递?
基本上,我希望做这样的事情:
HANDLE hThread1 = CreateThread(...);
HANDLE hThread2 = CreateThread(...);
HANDLE hThread3 = CreateThread(...);
...
WaitForMultipleObjects(3, {hThread1,hThread2,hThread3}, FALSE, INFINITE);
,而不是这样的:
HANDLE hThread[3];
hThread[0] = CreateThread(...);
hThread[1] = CreateThread(...);
hThread[2] = CreateThread(...);
...
WaitForMultipleObjects(3, hThread, FALSE, INFINITE);
foo(arg1, arg2, {arg3_1, arg3_2});
我误解了你的问题。你想在C中使用'std :: foo',它是C++吗? – thb
这是原始问题的副本。我只想使用像这样的参数:'randomFunction(arg1,args,{arg3_1,arg3_2});' – wanovak