首页 > 解决方案 > 为什么我不能多次声明不同类型的变量或函数?

问题描述

好的,我知道“一个定义规则”,但是当我尝试随后在源代码中声明具有不同类型的变量时,我遇到了一些错误,如下所示:

int fkc();
void fkc();

在此处输入图像描述

我的意思是这两个陈述只是两个声明,而不是定义。好吧,是否每个声明都必须只有一个唯一的定义?

标签: forward-declarationmultiple-definition-errorusing-declaration

解决方案


因为您不能仅通过更改返回类型来重载方法。不允许。编译器根据签名区分函数调用。函数的签名仅包括函数名称和参数,如

func(int x....)不包括返回类型


推荐阅读