Я только начал изучать C++ и написал следующее:
#include <iostream>
using namespace std;
void sumtype (double sum) {
if (sum>0)
cout<<"P"<<endl;
else if (sum==0)
cout<<"0"<<endl;
else
cout<<"N"<<endl;
}
double sum (double a, double b) {
return a+b;
}
int main() {
char sumtype;
double a;
double b;
cout<<"input value of a: ";
cin>>a;
cout<<"input value of b: ";
cin>>b;
cout<<"sum= "<<sum (a,b)<<endl;
sumtype (sum);
}
Однако он всегда говорит об ошибке: "sumtype" не может использоваться как функция sumtype (sum); ^
В чем проблема?
У вас есть одно и то же имя для переменной функции и переменной или имени функции, и она будет работать. (например, char sumtype1;)
sumtype
ожидает двойной, а не указатель на функцию.
sumtype
, выполнив это:char sumtype;
, делаяsumtype
ссылаться наchar
.sum
) вsumtype
.