这是Eigen文档的一部分:
Matrix3f m;
m << 1, 2, 3,
4, 5, 6,
7, 8, 9;
std::cout << m;
Run Code Online (Sandbox Code Playgroud)
输出:
1 2 3
4 5 6
7 8 9
Run Code Online (Sandbox Code Playgroud)
我无法理解如何通过operator <<上面捕获所有逗号分隔值.我做了一个小小的实验:
cout << "Just commas: ";
cout << 1, 2, 3, 4, 5;
cout << endl;
cout << "Commas in parentheses: ";
cout << ( 1, 2, 3, 4, 5 );
cout << endl;
Run Code Online (Sandbox Code Playgroud)
可以预测(根据我对C++语法的理解)只有一个值被operator <<捕获:
Just commas: 1
Commas in parentheses: 5
Run Code Online (Sandbox Code Playgroud)
因此标题问题.