2
我想使用靜態const字段,我在類中定義。
當我把它定義這樣的:C++錯誤:不是一個成員或多個定義
class DisjunctionQuery : public Query
{
public:
DisjunctionQuery();
static const std::string prefix;
};
const std::string DisjunctionQuery::prefix = "Or";
它說: 'DisjunctionQuery ::前綴' 的多個定義,如果我改變它的方式(除去兩行):
class DisjunctionQuery : public Query
{
public:
DisjunctionQuery();
//static const std::string prefix;
};
//const std::string DisjunctionQuery::prefix = "Or";
它說,當我嘗試在另一個地方調用它時,'前綴'不是'DisjunctionQuery'的成員。
我該如何讓它工作? 謝謝。
s /將嘗試定義/將嘗試執行/。該定義在類定義之內;多重實施方案就是問題所在。 – cdhowie
@cdhowie不,這只是一個聲明。另外,數據成員沒有實現,只能用於函數。 –
你以爲前者並不包括守衛。 – user1417475