【发布时间】:2011-06-15 17:14:05
【问题描述】:
我的Matrx 类被定义为
class Matrx
{
double A[50][50];
int m,n;
public:
Matrx(void);
Matrx(int a, int b)
{
m=a;
n=b;
}
Matrx operator +(Matrx b);
Matrx Transpose(Matrx b);
Matrx operator *(Matrx b);
CString printMatrx();
void readMatrx(double a[][]);
Matrx TransposeMat(Matrx b);
};
void Matrx::readMatrx(double a[][])
{
for(int i=0;i< m;i++)
{
for(int j=0;j< n;j++)
A[i][j]=a[i][j];
}
}
智能感知会出现如下错误
1 IntelliSense:数组可能没有这种类型的元素 d:\bmadaptive_dd_v1.02\matrx.h 17 27 TestServer
为什么?
如何将二维数组作为函数的参数传递?
【问题讨论】:
-
虽然您提供的代码不是有效的 C++,但不要依赖 Intellisense 来查找语法错误。 Intellisense 是一个自动完成工具,而不是语法检查器。它只会“快速查看”您的代码,可能不会给出最准确的错误消息。您应该尝试编译它(当然使用实际的编译器)并逐字发布实际的编译器错误消息(如果有)。
-
我确信围绕这个有很多重复和问题。在上面的框中搜索
[c++] bidimensional array或类似内容,然后查看不同的问题/答案。即使它们不完全相同,它们也一定会提供一些见解。
标签: c++ arrays multidimensional-array