在c++中使用' link '作为类名时出错
Error when using `link` as a class name in C++
考虑一个简单的c++程序:
#include <iostream>
class link {};
int main() {
link alink;
}
用g++编译它(Ubuntu/Linaro 4.5.2-8ubuntu4) 4.5.2给出以下错误:
test.cpp:6:8: error: expected '; ' before ' alink '
为什么我得到这个错误?
因为link也是一个posix函数,函数名隐藏了类名。
你可以说class link alink;
,但最好把你的类放到一个新的命名空间或重命名
相关文章:
- 访问者访问变体并返回不同类型时出错
- 在Linux for Windows上编译C++代码时出错
- 读取文件的最后一行并输入到链接列表时出错
- 重载操作程序时出错>>用于类中的字符串 memebr
- 调用专用模板时出错"no matching function for call to [...]"
- C++-试图将函数指针推回到另一个CPP文件中的矢量时出错
- LINK 尝试使用 OpenSSL evp aes 256 c++ 时出错
- 在Google Kick start中提交时出错
- 在c++中访问int到类对象的映射时出错
- 分段错误当我试图运行程序时出错
- 使用dynamic_cast和构造函数时出错
- CHECK(调用)函数在Google Colab中出错
- 用pybind11包装C++抽象类时出错
- 为x86而非x64编译时出错
- 从R调用C++函数并对其进行集成时出错
- 这个函数哪里出错了
- C++ 创建包含链表和字符串的对象的链接列表时出错
- 为重写std::exception的库生成swig接口时出错
- 应用程序崩溃并显示"symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference"
- 在c++中使用' link '作为类名时出错