c++ - 对部分特化无效使用不完整类型
问题描述
为什么我在以下内容中收到此错误:
template<typename T,typename Y>
class MyContainer
{
std::vector<T> list;
public:
void append( T&& elem) ;
};
template<typename T>
void MyContainer<T,int>::append(T&& elem)
{
list.push_back(elem);
}
int main()
{
}
错误:无效使用不完整类型 'class >MyContainer' void MyContainer::append(T&& elem)
我最初的想法是,如果有人将第二个模板参数作为 传递double
,它不会起作用,所以我需要先提供一个非专业化的成员函数定义,并且可能在此之上我可以提供部分专业化。
但即使在添加以下内容后,我仍然会遇到相同的错误:
template<typename T, typename Y>
void MyContainer<T,Y>::append(T&& elem)
{
list.push_back(elem);
}
解决方案
推荐阅读
- python-2.7 - 分类器中的 ValueError.predict
- swift - UITextField边框在Swift中指定半径
- cloud-foundry - 部署到 PCF:“1m0s 后超时:健康检查从未通过”
- windows - Move-Item 命令如何在它正在移动的目录中找不到文件?
- java - Checkstyle - 带注释的方法必须在构造函数之前
- bash - 即使 cron 进程正在运行,Cronjob 也无法正常工作
- java - EL表达式只用于方法调用,而忽略方法返回值
- laravel - 关于传递图像数据的 Laravel 问题
- plugins - 列表项,客户 NopCommerce
- android - 在 Edittext 文本更改上更新 recyclerview