poy*_*poy 4 c++ templates scope nested-class
子类是否可以共享相同的模板?例如:
template <class T>
class A
{
private:
T _aObj;
public:
class B
{
public:
T _bObj;
};
};
Run Code Online (Sandbox Code Playgroud)
哪里可以使用T A和B?
当我尝试这个时,我收到以下错误:
错误:A :: B不是模板
是的,工作正常(在符合标准的编译器上).
一种思考为什么这是合乎逻辑的方式是因为B它不是简单的一部分A,而是它的一部分A<T>!T不仅是类型的一部分A,而且也是B(正确的名称A<T>::B).
| 归档时间: |
|
| 查看次数: |
79 次 |
| 最近记录: |