gpt4 book ai didi

c++ - 不完整的类型,前向声明

转载 作者:行者123 更新时间:2023-11-30 04:23:43 25 4
gpt4 key购买 nike

我刚开始学习 C++,遇到了很多问题。现在我正在尝试使用堆和哈希表实现频率队列,因此我正在尝试为哈希表条目和堆条目创建结构。我所做的是...

  1 #include<iostream>
2 #include<string>
3 #include "freqq.h"
4
5 using namespace std;
6
7
8
9
10 struct _hashEntry {
11 string word;
12 int heapPstn;
13 };
14
15 struct _heapEntry {
16 int frequency;
17 hashEntry* wordInHash;
18 };

^^ the .cpp,
1 #define FREQQ_H_
2 #include <string>
3
4 using namespace std;
5
6 class FreqQ {
7 public:
8 struct _heapEntry;
9 typedef struct _heapEntry heapEntry;
10
11 struct _hashEntry;
12 typedef struct _hashEntry hashEntry;
13

^^ .h 。为简单起见,我删除了其他方法。

我遇到了错误不完整类型“struct FreqQ::_heapEntry”的无效使用freqq.h:8:10: 错误:“struct FreqQ::_heapEntry”的前向声明

我这辈子都想不通为什么。

有什么想法吗??

谢谢!

最佳答案

我不明白。您要在 .cpp 中定义 _hashEntry_heapEntry 结构吗?

将结构声明移动到 class FreqQ 声明之前的 .h,其中使用结构。

关于c++ - 不完整的类型,前向声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13202550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com