我有一个大约在下面的例子中的函数调用问题:C++函数调用问题
int main()
{
int a, b;
cin >> a >> b >> endl;
cout << *f(a,b);
return 0;
}
所以是* F(A,B)有效的函数调用?
编辑::遗憾的错误,我固定的他们,现在我有点累
我有一个大约在下面的例子中的函数调用问题:C++函数调用问题
int main()
{
int a, b;
cin >> a >> b >> endl;
cout << *f(a,b);
return 0;
}
所以是* F(A,B)有效的函数调用?
编辑::遗憾的错误,我固定的他们,现在我有点累
该代码至少可能是合理的。对于它的工作,f
必须被定义为返回以下两种各种各样的事情的函数:要么返回一个指针,在这种情况下*
取消引用指针,所以不管它是指向在被发送到标准输出。否则,f
必须返回一些用户定义的类型,该类型定义operator *
以返回与cout
兼容的内容。
如果不知道'f'
是什么,那么判断它是否有效是非常困难的。但是,如果它返回可能为dereferenced
的东西,则只要该'dereferenced'
值可以打印,(an overloaded operator <<)
就应该存在于该类型中。
也许你想展开'f'是什么。 – GManNickG 2010-09-21 06:20:42