函数的缺省形参和构造函数的缺省形参
来源:互联网 发布:虚拟机和系统网络连接 编辑:程序博客网 时间:2024/05/02 01:41
我们先看一个定义的带有缺省形参的函数:
int add(int a=4,int b=5){return a+b;}
我们在使用的时候,可以使用下面的方式:
cout<<add(1,2);cout<<add(1);cout<<add();
但是,如果我们使用下面的方式就不可以了:
cout<<add;
如果我们输出函数add的地址如下所示:
cout<<&add;
就可以看到,输出的结果和上面的结果是一样的。
所以,在使用缺省形参的函数的时候,我们如果没有传递一个参数的话,那么必须要在函数后面加一个“()”。
但是,对于构造函数的缺省形参,却不是这个样子。首先我们先看一个关于构造函数缺省形参的例子:
Point(int x=0,int y=0)//一个点类的构造函数{this->x=x;this->y=y;}
我们在定义点类的时候,下面的例子是错误的:
Point a();
虽然我们的构造函数有自己的形参,但是定义变量和定义对象不一样,我们如果想使用缺省参数的话,我们必须不带“()”,也就是下面的定义方式:
Point a;
Pointa(1);
第二种方式和定义函数一样,给出一个参数,另一参数使用默认的参数。
所以在使用带有缺省构造函数创建对象的时候,如果我们想全部都不传递参数(构造函数的所有参数都是缺省的),那么我们不可以使用“()”。这是和函数的使用不同的地方。
- 函数的缺省形参和构造函数的缺省形参
- 构造函数的参数缺省
- 避免无用的缺省构造函数
- 避免无用的缺省构造函数
- 慎用缺省构造函数的一种场景
- C++之缺省参数的构造函数、缺省的构造函数及缺省的析构函数
- 函数的缺省参数
- 函数的缺省参数
- 函数的缺省参数
- 函数的缺省参数
- 缺省构造函数
- 缺省构造函数
- 关于缺省构造函数
- 缺省构造函数
- 构造缺省函数
- 函数的作用域和缺省参数
- 缺省构造函数 和 xml序列化
- php函数的缺省参数
- WIN7(64位)系统发现数据源ODBC里面没有配置access数据源连接&System, System32, Syswow64 概述
- sql操作
- 指针作参数,指针变量的引用问题
- log4j 和common-logging
- 求一个字符串中出现的相同且长度最长的字符串,及其首字符的位置
- 函数的缺省形参和构造函数的缺省形参
- Oracle EBSr12单节点在64位Oracle Linux5上的安装
- SQL第四章的导图总结
- typedef 理解
- 室内定位技术(一)——引言
- 举例说明如何在android中利用Service来实现后台发送邮件功能
- bitset应用——用string数组对bitset数组赋值
- 通过查看内存学习引用
- 集合类 day10