错误:需要声明

发布于 2024-12-07 11:05:30 字数 269 浏览 1 评论 0原文

到目前为止,我的 DecisionTree.h 文件中只有

namespace DecisionTree
{
     public static double Entropy(int pos, int neg);
}

Visual Studio 已经突出显示 public 并表示

错误:需要声明。

我缺少什么?

So far all I have in my DecisionTree.h file is

namespace DecisionTree
{
     public static double Entropy(int pos, int neg);
}

and Visual Studio is already highlighting the public and saying

Error: expected a declaration.

What am I missing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

所谓喜欢 2024-12-14 11:05:30

public 是一个访问说明符。访问说明符仅适用于class/struct主体内,而不适用于namespace内。在 C++ 中(与 Java 不同),在 class 主体内,它后面必须跟有一个冒号 :

例如,

class DecisionTree {  // <----- 'class' (not 'namespace')
public:  // <------ access specifier
  static double Entropy (int pos, int neg);
private:
  int i;
};

public is an access specifier. Access specifiers are applicable only within class/struct body and not inside namespace. In C++ (unlike Java) it must be followed by a colon : inside the class body.

For example,

class DecisionTree {  // <----- 'class' (not 'namespace')
public:  // <------ access specifier
  static double Entropy (int pos, int neg);
private:
  int i;
};
花辞树 2024-12-14 11:05:30

它肯定会给出一个错误,因为你没有声明任何类、结构或枚举,并且直接在命名空间内编写了静态函数。因此,首先在命名空间内编写类定义,然后编写函数。

It will definitely give an error, for you dint declared any class,struct, or enum and directly you have written a static function inside a namespace. So, first write a class definition inside a namespace and then a function.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文