如何使用extern类
How can I use the extern class?
我尝试在Main.cpp 中使用extern class SLL;
我在user.cpp中定义了SLL的类名,如下所示。
class SLL {
public:
Node *headLink;
SLL() {
headLink = NULL;
}
void createFirst(int data) {
Node *tmp = headLink;
tmp->data = data;
tmp->nextNode = headLink;
tmp = headLink;
ListSize++;
}
const int getListSize() {
return ListSize;
}
void deleteList(int idx) {
Node *tmp = headLink;
Node *swapNode;
Node *deleteNode;
for (int i = 0; i < idx - 1; i++) {
tmp = tmp->nextNode;
}
deleteNode = tmp->nextNode;
swapNode = deleteNode->nextNode;
tmp->nextNode = swapNode;
free(deleteNode);
}
private:
int ListSize = 0;
};
但这是错误"SLL是不完整的格式">
我该如何解决这个问题?
类不能是extern
。您应该在user.hpp和来自main.cpp的#include "user.hpp"
中定义SLL类。
相关文章:
- 为什么在全局范围内使用"extern int a"似乎不行?
- 如何使用extern类
- 使用说明符 extern 声明的C++中的标识符链接
- 是否可以在不使用 decltype 的情况下推断先前定义的 extern 变量的类型
- 如何使用默认值将枚举声明为 extern
- 尝试使用 extern "C" 调用 C 中的C++方法,得到"undefined reference to"对象的链接器错误
- 在 extern 中声明一个使用向量的函数 "C" {}
- C++中未初始化的引用(使用 extern 声明)
- 对 C++ 中的特定标头使用 extern C 关键字是否允许从 void* 转换为 char*?
- 使用 extern const 初始化函数
- 如何使 extern 方法在共享库中定义,但使用 cmake 在其他目标中声明?
- 关于std::cout,为什么使用"extern"比"singleton pattern"
- 是否应该在只有定义的文件中使用 extern "C"?
- 使用 extern "C"调用 C 文件中的C++类函数
- 如何在不同的命名空间中使用双重声明的 extern "C"函数进行 clang 构建(如 msvc 和 gcc)
- 为什么我不能在标头中只定义一个非常量 gloabal 变量?如果我使用命名空间,为什么我必须声明它"extern"?
- 在不同的文件中使用相同的变量(使用 extern)
- 如果仅使用一个翻译单元使用Extern模板类,为什么我不会遇到链接错误
- 为什么他们坚持在下面的示例中使用"extern"说明符?
- 使用extern的正向声明(在C/C++的上下文中)