读书人

缺省的赋值函数解决办法

发布时间: 2012-04-05 12:42:40 作者: rapoo

缺省的赋值函数
大家来谈谈 缺省的赋值函数

[解决办法]
缺省就是你定义函数时,给函数参数赋值了。当你函数声明时,就可以不写参数,系统会默认为是函数定义时的那个参数。举个例子:

C/C++ code
#include<stdio.h>void fun(int a=5){printf("%d",a);}void main(){fun();//系统默认它为fun(5)}
[解决办法]
定义函数时,给函数参数赋值,声明时没写的话函数默认为定义的那个参数,写的话就为新值
[解决办法]
不行吧。。既然用const作形参 就是防止参数的值改变。。你要改变a的值,为什么用const呢?
探讨
引用:

缺省就是你定义函数时,给函数参数赋值了。当你函数声明时,就可以不写参数,系统会默认为是函数定义时的那个参数。举个例子:
C/C++ code

#include<stdio.h>
void fun(int a=5){
printf("%d",a);
}
void main(){
fun();//系统默认它为fun(5)
}

……

[解决办法]
我可以定义void fun(const int a=5){
printf("%d",a);
}

后面还可以改变a值??


当然可以
[解决办法]
我可以定义void fun(const int a=5){
printf("%d",a);
}

后面还可以改变a值??

当然可以
[解决办法]
可以···
探讨

引用:

缺省就是你定义函数时,给函数参数赋值了。当你函数声明时,就可以不写参数,系统会默认为是函数定义时的那个参数。举个例子:
C/C++ code

#include<stdio.h>
void fun(int a=5){
printf("%d",a);
}
void main(){
fun();//系统默认它为fun(5)
}

……

[解决办法]
缺省赋值函数是bitwise的,即浅拷贝。
[解决办法]
缺省的赋值函数应该是指类中没有operator =函数的话那么类中会提供默认的=操作
楼上两位讲的应该带默认参数的函数
3楼的情况 a值是可以改变的因为const只能修饰a定以后的使用情况定义前的使用情况无法控制

读书人网 >C++

热点推荐