C++ 中不管是成员函数,虚函数,还是普通函数,其实都是可以不用写返回值的,也能通过编译。编译器会为函数自动生成一个默认的int类型返回值。而且不论你在函数内部返回什么值,都会默认的转换为int类型
#include <iostream>
using namespace std;
class A {
public:
func () {return 0;}
virtual func1 () {return 1;}
func3 () {return 'p';}
};
func2 () {
return 2;
}
int main ()
{
cout << A::func << endl; // 普通的成员函数返回int
cout << A::func1 << endl; // 虚函数返回还是int
cout << func2 () << endl; // 普通的函数返回值依然是int
cout << A::func3 << endl; // 成员函数的返回值不依在函数内返回的类型所限制
return 0;
}