永发信息网

C++ VS2010编译器报错:未专用化的类模板不能用模板变量

答案:1  悬赏:70  手机版
解决时间 2021-01-30 20:54
C++ VS2010编译器报错:未专用化的类模板不能用模板变量
最佳答案
呃, 好多错误...
const ID_ id 中的 const 会被编译器忽略掉, 可以不写(这个不算错误).
这是一个最基本的Error: 类定义 后面 要有  ;  结尾. 
ID_ 既然是 int 的 alias, 那 类C 就是一个 非类型实参的类模板. 也就是说, C<> 的 <> 中应该是个 int的数字, 不能是 int 或者  ID_, 或者 其它类型.
对于 C++98 C++03 而言, vector > 中最后面的 两个 大于号之间  必须要有至少一个空格. 这是语法规定.  除非你的编译器支持 C++11, 而且你在编译的时候 指定了编译选项 


-std=c++14或者
-std=c++11

最后, 一个修改后的版本:
#include
typedef int ID_;
template 
class C
{
    public:
        void say() {};
};
//typedef std::vector CVec;//报错
//typedef std::vector> CVec;//报错
//typedef std::vector> CVec;//报错
typedef std::vector > CVec;       // 注意: 这三个是不同的类型
typedef std::vector > CVec;       // 注意: 这三个是不同的类型
typedef std::vector > CVec;     // 注意: 这三个是不同的类型
int main()
{
    CVec vec;
    return 0;
} 最最后, 欢迎交流. :)
追问哇遇到大牛了。
那请问"非类型实参的类模板“有什么用呢?追答template 
class MyArray
{
    private:
        T arr[N];          // N: 这里不是可以让用户指定 建一个多大的数组吗, 这就是它的作用.
};

MyArray intArr10;
MyArray doubleArr100;c++设计的多优雅.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
辽宁法随律师事务所地址好找么,我有些事要过
洒光的意思是什么啊?知道的请说下!
手术损伤了面神经的哪个分支A.颞支B.颧支C.上
辽宁紫剑律师事务所怎么去啊,我要去那办事
san chan kun分别怎么用和称呼
C语言设程序中变量定义语句如下int a=10,b=4
和 灵摆 塔罗牌差不多能测试占卜的还有哪些啊
贫属的意思是什么啊?知道的请说下!
企业之间相互提供的、与商品生产和流通有关的
辽宁卓实律师事务所地址在什么地方,我要处理
什么材质的瑜伽垫干湿防滑?还耐用?
辽宁重阳律师事务所地址好找么,我有些事要过
怠偷的意思是什么啊?知道的请说下!
石芳丽骑电动车不小心撞倒了老人韩健,便陪着
美国内布拉斯加林肯大学一年不算奖学金需要多
推荐资讯
长生最后会不会知道落落为什么忘记他
现在通过ccie认证好找工作吗?
中国移动(建新服务厅店)地址在哪,我要去那里
东江欢动跆拳道馆(欢动跆拳道馆)地址在什么地
龙凤缘家具城地址在什么地方,我要处理点事
意豆咖啡地址在哪,我要去那里办事
兽人必须死ol无尽单刷冰霜之城怎么单刷
加油站(海洋路)地址在什么地方,想过去办事
皇家1号地址有知道的么?有点事想过去
下列关于生物体的组成、结构与功能的叙述中,
蜂巢快递柜(交通路光明花园三栋蜂巢快递柜)地
(2000)DNA碱基组成规律是A.[A]=[C];[T]
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?