我不知道如何实现这个功能
I don't know how to make this function
原问题
我正在用 C++ 编写一个名为 Evaluate
的函数。它接受三个数组作为参数:
double Evaluate (double inputs[], double hidden[], double outputs[]) {
// To-Do...
}
问题出现在这个场景:
The programmer decides to initialize the function Evaluate
with only two parameters: inputs[] and outputs.
所以,我想像这样创建 Evaluate
:
double Evaluate (double inputs[], double hidden[] = {}, double outputs[]) {
// To-Do...
}
但是,这会产生奇怪的错误:
In function 'double Evaluate (double*, double*, double*)'
34:53: error: unexpected '{' token
34:54: error: unexpected '}' token
有解决办法吗?
*提前致谢。
更新问题
在评论的帮助下,我成功地使用了我的答案。
我现在很好奇,多个函数重载会不会导致程序变慢?
我学到的一种方法是 函数重载 - 您可以在其中创建相同函数的副本,但方式不同。
int add(int a)
{
return ++a;
}
int add(int a, int b)
{
return a + b;
}
double add(double a, double b)
{
return a + b;
}
这变得非常有用,我可以用它实现许多操作!
就我的 evaluate
功能而言,我可以这样做:
evaluate(std::vector<double> inputs, std::vector<double> outputs, std::vector<double> hidden)
{
// ...
}
evaluate (std::vector<double> inputs, std::vector<double> outputs)
{
// ...
}
原问题
我正在用 C++ 编写一个名为 Evaluate
的函数。它接受三个数组作为参数:
double Evaluate (double inputs[], double hidden[], double outputs[]) {
// To-Do...
}
问题出现在这个场景:
The programmer decides to initialize the function
Evaluate
with only two parameters: inputs[] and outputs.
所以,我想像这样创建 Evaluate
:
double Evaluate (double inputs[], double hidden[] = {}, double outputs[]) {
// To-Do...
}
但是,这会产生奇怪的错误:
In function 'double Evaluate (double*, double*, double*)'
34:53: error: unexpected '{' token
34:54: error: unexpected '}' token
有解决办法吗?
*提前致谢。
更新问题
在评论的帮助下,我成功地使用了我的答案。
我现在很好奇,多个函数重载会不会导致程序变慢?
我学到的一种方法是 函数重载 - 您可以在其中创建相同函数的副本,但方式不同。
int add(int a)
{
return ++a;
}
int add(int a, int b)
{
return a + b;
}
double add(double a, double b)
{
return a + b;
}
这变得非常有用,我可以用它实现许多操作!
就我的 evaluate
功能而言,我可以这样做:
evaluate(std::vector<double> inputs, std::vector<double> outputs, std::vector<double> hidden)
{
// ...
}
evaluate (std::vector<double> inputs, std::vector<double> outputs)
{
// ...
}