C++中函数名和变量名相同不行吗?
#include<iostream>usingnamespacestd;intchoice(intchoice){returnchoice;}intmain(){intc...
#include <iostream>
using namespace std ;
int choice (int choice)
{
return choice ;
}
int main ( )
{
int choice = 1 ;
choice (choice) ;
}
Visual Studio 2010报错,将choice改为Choi,就正常运行了,这是为什么?C++不允许函数名和变量名相同吗? 展开
using namespace std ;
int choice (int choice)
{
return choice ;
}
int main ( )
{
int choice = 1 ;
choice (choice) ;
}
Visual Studio 2010报错,将choice改为Choi,就正常运行了,这是为什么?C++不允许函数名和变量名相同吗? 展开
5个回答
展开全部
对 很明显的二义性 程序不知道该调用哪个
所以得改 纠正自己的变成写法 比如函数名第一个字母小写 其后每个单词首字母大写 如adfQuality 而变量名可采用全大写 ADCQUALITY之类的
这样可以完全区别
所以得改 纠正自己的变成写法 比如函数名第一个字母小写 其后每个单词首字母大写 如adfQuality 而变量名可采用全大写 ADCQUALITY之类的
这样可以完全区别
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以一样的,没有要求,最好用的时候不要一样了。影响程序的可读性。不利于以后的修改查错。自己都难分清了,要让别人读你的程序,也就更不好理解了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不允许在相同的存储区有相同的标识符。如动态存储区和静态存储区可以存在相同的标识符。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C++的语法规定:
1、变量、函数、结构、类 ……等等,在相同的一个作用域中,只能有一个唯一的名称。
2、全局变量与局部变量可重名,同名情况下优先认可局部变量而不认可全局变量。
3、特别提示,这些规定在不同的编程器、编程环境下不尽相同,有的编程环境下,类与函数重名并不报错。日常编程时,要自已注意规避容易误解的重名。一般重名变量的定义只用在一些非关键性的变量上,比如循环计数器之类的,并且使用前都会置零。
1、变量、函数、结构、类 ……等等,在相同的一个作用域中,只能有一个唯一的名称。
2、全局变量与局部变量可重名,同名情况下优先认可局部变量而不认可全局变量。
3、特别提示,这些规定在不同的编程器、编程环境下不尽相同,有的编程环境下,类与函数重名并不报错。日常编程时,要自已注意规避容易误解的重名。一般重名变量的定义只用在一些非关键性的变量上,比如循环计数器之类的,并且使用前都会置零。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询