让我们考虑一下像这样的代码示例(它只是一个人为的例子来组合,define并且template不需要任何意义):
#define COMMA ,
template <typename A> class Test
{
public:
Test(){}
void Foo(A var COMMA int test);
};
Test<int> Knarz;
Run Code Online (Sandbox Code Playgroud)
题:
是我的假设是正确的说,第一预处理器将查找/替换逗号所有出现和第二编译器将实例化的顺序任何模板?
跟进:
如果上面的答案是" 是 ",正如我希望的那样,你能解释为什么使用模板和定义的解决方案有效吗?