当您在单独的cpp文件中定义函数时,如果编译器知道某个方法不能使具有相同签名的另一个方法(仅因返回类型不同)重载另一个方法,为什么需要返回类型来指示您要定义哪个特定函数?是不是foo :: bar(params)足以指定这个?
头文件
class foo{
public:
void bar();
};
Run Code Online (Sandbox Code Playgroud)
源文件
foo::bar() //equivalent to function declaration? throws error
{...}
Run Code Online (Sandbox Code Playgroud)
谢谢
Pet*_*ker 10
我认为没有任何固有的理由不能做到这一点,但使用它会导致不一致.毕竟,如果函数的定义可见,则不必声明函数,但在这种情况下,您必须包含返回类型.所以具有前面声明的函数定义不需要返回类型,但是函数定义不需要返回类型.如果您删除了声明,则必须重写定义.总是太多摆弄.
编辑:当你看到函数的定义时,更不用说在你面前有返回类型的便利性.
| 归档时间: |
|
| 查看次数: |
696 次 |
| 最近记录: |