首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不是部分专门化,但类型仍然不完整

不是部分专门化,但类型仍然不完整
EN

Stack Overflow用户
提问于 2014-12-17 22:44:41
回答 1查看 58关注 0票数 0

给定以下程序:

代码语言:javascript
复制
template <class T>
class A {
    void f();
};

template <class T>
class B { };

template <class T>
void A<B<T> >::f() {

}

我得到了错误:

代码语言:javascript
复制
invalid use of incomplete type ‘class A<B<T> >’

这算不算部分专业化?我一直认为部分专门化只是对模板参数的结构子集进行专门化。

有没有什么关于ao的工作我可以用模板化的类型来完成专门化模板?

EN

回答 1

Stack Overflow用户

发布于 2014-12-17 23:05:56

不能只部分专门化一个成员函数,必须专门化整个类

代码语言:javascript
复制
template <class T>
class A {
    void f();
};

template <class T>
class B { };

template <class T>
class A<B<T> >{
    void f() { /* put here what you need in this special case */}; 
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27528142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档