C++ 中未定义的结构类型
undefined struct type in c++
以下是我的索引.h 类
class index
{
struct node {
string item;
int counter;
vector<int> pageNumber;
};
public:
node* newNode (string word);
...
private:
vector<node*> indexStructure;
int lineCounter;
int indexSize;
};
在我的索引中.cpp类我有一个方法定义如下:
node* index::newNode (string word)
{
node* temp = new node();
temp.item = word;
temp.counter = 1;
temp.pageNumber = new vector <int> (10, -1);
temp.pageNumber[0] = lineCounter / 40;
return temp;
}
当我编译时,它告诉我"节点不命名类型",即使它是在 index.h 的结构中定义的,并且我的私有向量变量可以具有类型 node*。
node
是index
中的嵌套类,因此在全局命名空间中称为index::node
。
请注意,您可以从函数体中省略index::
,因此只需在 cpp 文件的签名中说出index::node
,因为这在"全局命名空间"中。
将其更改为index::node* index::newNode(string word)
。按照您尝试的方式执行此操作所需的范围直到函数名称结束之后才会建立。
相关文章:
- 特征::矩阵<双精度,1,3> 结构类型函数中的返回类型函数
- <badref> 当使用 CallInst::CreateMalloc 作为结构类型时
- 给定一个C++嵌套的私有结构类型,是否有从文件范围静态函数访问它的策略
- 为什么"具有常量成员的结构"类型的指针不能指向"具有非常量成员的结构"?
- 查找声明为结构类型 C++ 的数组末尾
- C++ - 将结构类型的数组传递给用户定义的函数
- PowerShell 使用结构类型参数调用 C++ DLL 的导出函数
- NTTP 的结构类型:为什么所有成员都必须是公共的?
- 当我尝试访问结构类型时,我收到 std::bad_variant_access 异常
- 承诺可以使用结构类型吗?
- 填充模板化结构类型的结构成员
- 如何为结构类型变量赋值
- 在 c++ 中将结构类型转换为无符号字符*
- 在 c++ 中将一种结构类型分配给另一种类型
- 如何访问在 c++ 中在类内声明的结构类型指针变量?
- 确定输入"conscalc: calc"的类型时出错。不能联合编码器。具有不同字段集的结构类型
- 无法将结构类型的标识符设置为 nullptr;
- 结构类型成员的默认构造函数中的默认参数
- 如何在执行期间终止(或返回)具有结构类型的自动函数
- 在 stl 中迭代结构类型的队列