use*_*922 14 c++ templates generic-programming
模板专业化在代码中出现的顺序是否会改变程序的含义?如果是这样,为什么呢?
例:
在源代码中的某个地方
// specialization A
...
// specialization B
...
Run Code Online (Sandbox Code Playgroud)
与
// specialization B
...
// specialization A
...
Run Code Online (Sandbox Code Playgroud)
这会产生相同的结果吗?
Ste*_*ano 31
为函数模板,类模板,类模板的成员函数,类模板的静态数据成员,类模板的成员类,类模板的成员类模板,类模板的成员函数模板,成员的成员函数放置显式特化声明类模板的模板,非模板类的成员模板的成员函数,类模板的成员类的成员函数模板等,类模板的部分特化声明的放置,非模板类的成员类模板,成员类模板等的类模板可以根据显式特化声明的相对位置及其在翻译单元中的实例化点的相对位置来影响程序是否格式良好,如上下文所述.写专业时,要注意它的位置; 或者使它编纂将是一种试图点燃其自焚的试验.
简单地引用部分14.7.3/7的的2011年国际标准的C++编程语言
是的......这不是笑话
Bat*_*eba 13
只要依赖专业化的代码片段已经看到它们,顺序无关紧要.
换句话说,订单会很重要
// specialization A
// Some code where B would be a better match
// specialization B
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1587 次 |
| 最近记录: |