记录一个学程序是遇到的问题,在一个项目中采用了类中定义结构体的写法。这样写本身没有问题,但是在调用时实例化时候要注意.和::调用的区别。用.调用时会引发一些列的错误,例如:错误 74 error C1004: 发现意外的文件尾 d:\程序\c++\get_mdcb\get_mdcb\cget_bl.cpp 174 1 Get_MDCB;错误 1 error C2059: 语法错误:“.”
d:\程序\c++\get_mdcb\get_mdcb\cget_bl.h 28 1 Get_MDCB等等。
例子如下
嵌套定义
class CObs_Struct
{
public:
struct Obs_of_B
{
vector<double> b_row;
};
};
错误调用 vector<CObs_Struct.Obs_of_B> obs_b;
正确调用 vector<CObs_Struct::Obs_of_B> obs_b; //b矩阵
欢迎各位指正批评~