C++ 函数定义形参中赋值语句

有一段C++程序,一个函数的声明 int fun(const char * sText, double p = 1.0);
这里我有两个问题:
1.第二个形参p问什么给定值,这是什么意思?
2.第一个形参定义为const,有什么用?
麻烦说的详细点。
非常感谢!

第一个问题,这是函数参数的缺省值,也就是你给函数赋参数的时候,第二个值可以不写,若不写的话,就表示p=1.0,若写,则会覆盖p的值,即p值为你传递的值。
第二个,定义成const为常量,可以保证 *sTest不会被修改。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-07-22
一般在函数定义中形参前面加了const表明该形参为输入参数,在函数内部不能对其进行修改。

在C++中能够在函数的形参表中赋值吗?
(1)在函数声明或定义时,直接对参数赋值,该参数就是默认参数。(2)在函数调用时,省略部分或全部参数,这时就会使用默认参数进行代替。注意事项:(1)一般在声明函数是设置默认参数。如果在函数声明和定义函数时都设置了默认参数,则以函数声明的默认参数为准。复制代码 代码如下:include<iostream> usi...

C++中如何定义函数?
函数的定义格式为:返回值类型 函数名 ( 形参列表 ){ ...return 对应的返回值类型数据(常量或变量);} 做返回值用,也有无返回值的比如说main是无返回值类型的就是void,也就是说如果abc是void类型的他就干完自己的活就什么都不做了;函数abc()是int类型的也就是又返回值,并且会返回一...

解释下C++程序结果,默认形参
void fun(int a,int b=2); \/\/在声明函数的时候,b有默认参数2 void fun(int a=1,int b) \/\/在定义函数的时候,b的默认参数不用写出(因为已经声明了),此时a有 \/\/ 默认参数1 { cout<<a<<","<<b<<endl;} 输出1,2

c++ 下面例子中cout<<"总和:"<<Sum(8,array)<<endl; (8,array)什么意思...
Sum是一个函数,主函数之后有函数定义:double Sum(int n,double a[])你传入参数8和array,这也是根据函数参数要求来写的。形参中double a[]就是要传入一个double数组的首地址。如果换成array[i],你传入的是一个double数值,不是double数组;而且 cout<<"总和:"<<Sum(8,array)<<endl; 这句是...

C++中定义函数时,函数的参数什么时候用int **a ?与直接用int a[]和...
一、函数的参数什么时候用int **a 函数定义中参数叫形参。函数调用时,调用者使用的参数数据为实参。当实参是一维指针变量的地址时,形参要用二维指针。如:main(){ int *p; \/\/定义一个指针变量p,p也有自己的存储地址,p中可以存放别的整型变量的地址 int i=123;p=&i ;init_i( &p) ; \/\/...

函数定义时的参数为?函数调用语句中的参数称为?
函数定义时的参数为:形参 函数调用语句中的参数称为:实参 实现函数时,如果有参数,则要写明参数:int plus(int a,int b){ return (a+b);} void fun(void){ } 但要注意,此时的参数名是“形参”,名字可以随便起,与调用时不必一样,但类型要一样!个数也应该相同。还有各个类型的排列顺序...

自学c++想问下定义函数时什么时候后面要带参数,什么时候不用带_百度知...
void func(int x)函数中所带的参数被称为形参。形参的作用就是实现主调函数和被调函数之间的联系,形参一般是函数需要处理的数据。函数在没有被调用的时候形参只是一个符号,它只表示形参的位置应该有一个什么样的数据。函数被调用时才由主调函数将实际参数赋予形参,实际参数通常简称实参。函数没有被...

C++ * a和*&a作为函数的参数时有什么区别?
调用的时候要foo(&pValue)这种技术很多用在比如定义一个安全删除指针的函数,所谓安全就是,只有当指针为零的时候才执行删除,删除之后,立刻把指针赋值为NULL。template<typename T> inline safe_delete(T*& ptr){ if (ptr){ delete ptr;ptr = NULL;} } 在C++里面,能不用指针都应该尽量避免,...

这句话是什么意思?x(x)又是什么?C++
从这句话前一句可以看出,Point::Point(){x=y=0;}是一个默认构造函数,也就是假设我定义一个对象(Point pa;)的时候可以不用赋予初始值。这句话本身是为了实现自己定义的构造函数,也就是当我定义一个对象(Point pa(1,1);)的时候可以把(1,1)的值给到形参x和y中去,一般情况下,书中...

请问c++中定义一个函数什么时候要...(void),什么时候要...()_百度知 ...
void也就是空,定义函数时,其参数可以不写,也可以用void,但定义指针时一般让指针等于void或0;

相似回答
大家正在搜