これまでのところ、DecisionTree.h
ファイルにあるのは
namespace DecisionTree
{
public static double Entropy(int pos, int neg);
}
そしてVisual Studioはすでに強調表示されてpublic
おり、言っています
エラー: 宣言が必要です。
私は何が欠けていますか?
これまでのところ、DecisionTree.h
ファイルにあるのは
namespace DecisionTree
{
public static double Entropy(int pos, int neg);
}
そしてVisual Studioはすでに強調表示されてpublic
おり、言っています
エラー: 宣言が必要です。
私は何が欠けていますか?
public
アクセス指定子です。class/struct
アクセス指定子は、 body 内ではなく body内でのみ適用できますnamespace
。C++ では (Java とは異なり)、本体:
内でコロンが続く必要があります。class
例えば、
class DecisionTree { // <----- 'class' (not 'namespace')
public: // <------ access specifier
static double Entropy (int pos, int neg);
private:
int i;
};
クラス、構造体、または列挙型を宣言し、名前空間内に静的関数を直接記述したため、間違いなくエラーが発生します。したがって、最初に名前空間内にクラス定義を記述し、次に関数を記述します。