C++;重载函数 在C++中,您可以使用相同的参数类型重载函数,但返回类型不同吗?
重载函数的思想是这样的 intfoo(intx,inty); int foo(双x,双y) 但这行得通吗? intfoo(intx,inty); 双foo(intx,inty)C++;重载函数 在C++中,您可以使用相同的参数类型重载函数,但返回类型不同吗?,c++,function,types,return,overloading,C++,Function,Types,Return,Overloading,重载函数的思想是这样的 intfoo(intx,inty); int foo(双x,双y) 但这行得通吗? intfoo(intx,inty); 双foo(intx,inty) 如果第二种方法有效,编译器如何知道选择哪个函数?不,你不能。参数类型是C++用来决定调用哪个函数的。无论如何,你不能。至少在C++中,问题是C++完全可以简单地丢弃函数调用的值。如果你做了foo(0,0),会发生什么作为语句本身?哪一个函数会被调用?在函数完成后将其存储为int与double的方法是-返回值,可能返回更高
如果第二种方法有效,编译器如何知道选择哪个函数?不,你不能。参数类型是C++用来决定调用哪个函数的。无论如何,你不能。至少在C++中,问题是C++完全可以简单地丢弃函数调用的值。如果你做了foo(0,0),会发生什么代码>作为语句本身?哪一个函数会被调用?在函数完成后将其存储为int与double的方法是-返回值,可能返回更高层次的值,然后通过将其设置为整数将其降级?@Josh-这是我的问题。我怀疑的是,正是因为这个原因,你不能,但我想确认一下。