我有一个基类和派生的基类:
class Neuron
{
protected:
double input;
double output;
};
class InputNeuron : public Neuron
{
public:
InputNeuron();
};
Run Code Online (Sandbox Code Playgroud)
派生类的默认构造函数定义如下
InputNeuron::InputNeuron() : input(0.0), output(0.0) {}
Run Code Online (Sandbox Code Playgroud)
问题是:输入和输出的初始化是错误的.
我的目标是从继承中获益,以避免在派生类中重新声明输入和输出.但是,在当前状态下,使用这些成员会发出一条消息:input is not a nonstatic data member or base class of class InputNeuron消息我似乎无法从中获取信息.
我将自己的Enum类型定义为
enum Norm {norm1, norm2};
Run Code Online (Sandbox Code Playgroud)
现在,在我main(),我正在使用不同类型的规范聚类图像.
原型是:
int extraction(char* cloudfile, float& maximumRadius, Norm norm);
Run Code Online (Sandbox Code Playgroud)
并且main()在该getops开关内部调用该函数的部分是:
extraction(argv[2], maximumRadius, norm2);
Run Code Online (Sandbox Code Playgroud)
有意义?
我试图运行几次,但gdb告诉我有一个我找不到的分段错误.
因此,我目前的问题:
Enum类型可以用作函数的参数吗?或者我必须采用预定义类型?
在研究B. Stroustrup 的C++编程语言时,已经提到了prim()函数的存在,它将声明的变量的范围缩小到一个单独的块.
这是本书提供的一个例子:
Run Code Online (Sandbox Code Playgroud)if (double d = prim(true)) { left /= d; break; }
尽管了解它的兴趣,但我无法弄清楚如何使用它:它是某个库的一部分吗?我必须精确标准,因为Visual Studio无法识别该功能.
提前致谢