首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

泛型定义解决思路

2012-09-27 
泛型定义C/C++ codetemplatetypename T1,typename T2templateclass T1,class T2上面tyepname 和 class

泛型定义

C/C++ code
template<typename T1,typename T2>template<class T1,class T2>


上面tyepname 和 class有什么区别?

[解决办法]
原则上 无差异
[解决办法]
完全一样.
[解决办法]
typename
C++ Specific —>

typename identifier;

Use this keyword only in template definitions. This keyword tells the compiler that an unknown identifier is a type. For example:

template<class T> class X {
typename T::Y; // treat Y as a type
 
Y m_y;
};
This keyword can also be used in place of class in template parameter lists. For example, the following statements are identical:

template<class T1, class T2>...
template<typename T1, typename T2>...

[解决办法]
LZ的例子里没有差异。
有差异的地方:
template<template<class> class TemplateTemplateParameter1, template<typename> class TemplateTemplateParameter2>
typename nested::type_name
语法规则决定以上粗体部分不能被替换。

[解决办法]
楼上所说极是.

热点排行