最赞回答 / TIMELORD4083146
当const已经修饰一直变量时,再去用指针去指这个变量会很危险,因为指针可以改去该变量的值,与const就有冲突的风险,const int *p=&a和const int * const p=&a是可以的,这样保证了*p的值不能改变,所以就不会有与const冲突的可能性。<...code...>
2018-11-12
已采纳回答 / 慕设计4173655
申请了10个整型内存,就把10个内存空间都释放掉,用delete[] arr;用delete arr 只是释放了第一个空间,还有九个没释放掉哦。
2018-10-31
已采纳回答 / Loading_ling3795574
确实是错误用法,C++信奉一个原则,不管你设计的程序是否涉及到错误方法使用,只要存在错误,不管用没用到,就是错的!我们看你说的例子,x是常变量,不可以修改,如果y是指向x的指针,那么*y也不能修改,*y可以看做是x的引用,毕竟引用本质就是指针啊,也得是常变量,这点没问题吧,记住这就是编译器在上述中得到的信息点,接下来声明指针y,声明指针y的时候到底要不要表明,*y是const,如果表明,没问题了,这点没有疑问吧,如果不标明呢,这个语句int *y=&x意味着什么呢?*y可以修改,是变量,这是C++...
2018-10-19
最赞回答 / HeRo_Lxp
你这个没办法实现输出数组中的最大值 输出的是maxNum和数组中的数中的最大值 不过第一个还是不用理会 这个判卷系统有点垃圾 要取arr[0]和arr[2]才是正确输出 下面是我的代码 作为参...
2018-10-13
最赞回答 / CodeOfCoin
我是这样理解的,如果是void fun(int x,int y)其实是找了一个跟罗xx同名的人,但本质上不是罗某某,所以形参的罗xx无论做什么事情都不会影响实参罗xx但是void fun(int &x,int &y)是给了实参罗某某取了别名,叫萝卜头,你叫萝卜头做什么事情,实质上是去叫罗某某做的,所以形参用的是引用的话,形参的数值的改变肯定会影响到实参的值
2018-10-09
最赞回答 / 白晔未稀
用指针传参是传址,比用值传参效率更高,也更节约内存。例如一个函数需要传入一个结构体对象,用某个指针指向要传入的结构体作为函数实参,则传入的指针是一个地址,如果地址是int型则只占用8bit内存,如果用结构体对象实例传值作为实参,所传数据的大小是该结构体所有成员大小之和,比一个地址所占用的内存大得多,所以用指针传参既节约了内存,又提升了函数运行的效率。
2018-08-11
最赞回答 / 修裾欲溯空
作用域分为:
1. 函数原型作用域(最小的作用域)
函数原型:int func(int x); 这是一个函数声明,函数形参x 的作用域就时所谓的函数原型作用域。
2. 块作用域
一对大括号 { ... } 内的一段程序,块中声明的标识符作用域就是块作用域。
3. 类作用域
类成员的作用域。
4. 文件作用域(static)
全局静态变量具有全局作用域,从声明处开始,到文件(.cpp文件)结尾处结束。
5. 全局(程序)作用域(extern)
全局变量具有全局作用域,只要在使用前对其进行...
2018-07-31