[英]C++ Basic Class Error
我正在嘗試使用自定義類編譯一個簡單的程序。 問題是我無法創建一個名為“union”的方法。 我沒有在代碼中使用 std 或任何庫,所以應該沒有任何污染。 我究竟做錯了什么?
test_maximal_clique.cpp
#include "BronKerbosch.h"
int main()
{
return 0;
}
布朗克博斯
#ifndef BRON_KERBOSCH_H
#define BRON_KERBOSCH_H
class VertexSet
{
public:
VertexSet union(int a);
};
#endif /* BRON_KERBOSCH_H */
布朗克博斯.cpp
#include "BronKerbosch.h"
int VertexSet::union(int a)
{
return a;
}
編譯+錯誤:
gcc -o bin/BronKerbosch.o src/BronKerbosch.cpp -c -ansi -pedantic -Wall -Wextra
In file included from src/BronKerbosch.cpp:1:0:
src/BronKerbosch.h:13:12: error: expected identifier before ‘(’ token
int union(int a);
^
src/BronKerbosch.h:13:13: error: expected unqualified-id before ‘int’
int union(int a);
^
src/BronKerbosch.h:13:13: error: expected ‘)’ before ‘int’
src/BronKerbosch.cpp:7:16: error: expected unqualified-id before ‘union’
int VertexSet::union(int a)
^
make: *** [bin/BronKerbosch.o] Error 1
我將union
更改為unionn
並編譯。 為什么? union 是 C++ 保留關鍵字嗎?
您正在嘗試使用保留字: union - 這就是編譯器抱怨的原因,但一旦您更改名稱就不在乎。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.