博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OOP 2.2 构造函数
阅读量:6582 次
发布时间:2019-06-24

本文共 898 字,大约阅读时间需要 2 分钟。

1、概念

  • 成员函数的一种
  • 名字与类名相同,可以有参数,没有返回值(void也不行)
  • 作用:对对象进行初始化,如给成员函数赋初始值
  • 如果定义时没有构造函数,则编译器生成一个默认无参数的构造函数
    • 默认构造函数无参数,不进行任何操作
  • 构造函数是在对象已经占用存储空间后,对对象进行一些初始化工作
  • 对象生成时构造函数自动被调用。对象一旦生成,就再也不能在其上执行构造函数
  • 一个类可以有多个构造函数
  • 构造函数的意义:构造函数执行必要的初始化工作,有了构造函数就不必专门写初始化函数,也不用担心忘记调用初始化函数
    e.g.
class complex{    pravate:        double real,imag;    public:        viod set(double r,double i);};//编译器自动生成默认构造函数complex c1;//默认构造函数被调用complex *pc=new complex;//默认构造函数被调用

e.g.

class complex{    private:        double real,imag;    public:        complex(double r,double i=0);};complex::complex(double r,double i){    real=r;imag=i;}complex c1;//error 缺少构造函数的参数complex *pc=new complex;//error 缺少参数complex c1(2);//OKcomplex c1(2,4),c2(3,5);//OKcomplex *pc=new complex(3,4);//OK
  • 可以有多个构造函数(重载),参数个数或类型不同

2、构造函数在数组中的使用

class cs{    int x;    public:    cs(){        cout<<"1 called"<

e.g.

 

转载于:https://www.cnblogs.com/fzu-031702148/p/8456843.html

你可能感兴趣的文章
对向量、矩阵求导
查看>>
各版本linux下载地址大全
查看>>
CentOS 6.X 关闭不需要的 TTY 方法
查看>>
我的友情链接
查看>>
分区技术学习一
查看>>
Juniper 高级选项
查看>>
编程能力的四种境界
查看>>
编译安装mysql
查看>>
在windows上秒开应用程序
查看>>
【20180611】MySQL OOM
查看>>
Python面向对象编程(一)
查看>>
决心书
查看>>
如何把图片上的文字转换成word?
查看>>
7z命令行
查看>>
C语言编程实现 输入一个非负整数,返回组成它的数字之和(递归方法)
查看>>
c3p0
查看>>
redis cluster 集群搭建(增、删、改、查) :5.0.2
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
引号-下划线,连接多个变量
查看>>