VS写模板类的时候用vector<T>不能识别成员函数

该如何解决?如图;代码如下:template<typenameDataType>classMatrix{public:Matrix(intn,intm):n(n),m(m... 该如何解决?

如图;代码如下:
template<typename DataType>class Matrix {
public:
Matrix(int n, int m) :n(n), m(m) {
data = new vector<DataType>[n];
for (int i = 0; i < n; ++i)data[i].resize(m);
}
DataType &operator[](unsigned int index) {
return data[index];
}

private:
int n, m; vector<DataType>*data;
};
能正常编译...
展开
 我来答
zhl_xina2000
2015-09-30 · TA获得超过267个赞
知道小有建树答主
回答量:656
采纳率:0%
帮助的人:477万
展开全部
问题不在代码本身,是VS的静态代码检查功能针对模板类有缺陷,你只要不实例化,里面的内容就不检查
追问
那就是说没法解决了吗?
追答
这个只能靠microsoft,自己没办法
wdghy123
2015-09-30 · TA获得超过1583个赞
知道大有可为答主
回答量:1514
采纳率:95%
帮助的人:731万
展开全部
是不是没加using namespace std;
更多追问追答
追问
加了的,也包含了iostream和vector
追答
数据成员的声明改成这样:
private:
int n;
int m;
vector* data;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式