1. 构造函数(也叫构造器),在对象创建的时候自动调用,一般用于完成对象的初始化工作

2.一旦自定义了构造函数,必须用其中一个自定义的构造函数来初始化对象

就是有多个的话    根据参数编译器自行选择

Person(int a){}         Person(int a ,int b){}        还有压根没有定义的构造函数(初始化函数)对应的调用main调用::

Person a(5)                       Person  a(10 ,5)      Person a

补充一点 Person (){m_age=0}

之后的定义是 Person person;

虽然有() 但是没有参数所以就

至于 定义的参数 都是最后在函数体内部给了 类里面定义的成员变量了

给了才算是初始值   才利用了参数不然要参数有什么用

3.构造函数

函数名与类同名,无返回值(void都不能写),可以有参数,可以重载,可以有多个构造函数

4.new        可以调用构造函数,  对于new malloc 的堆空间还需要初始化?不是在定义的时候已经初始化了吗?

5.但是把对象定义到全局 或者栈空间(new 可以malloc 不可以)         代码区

6.构造函数 是以类名     Person(){}

在调用的时候不需要写它的调用函数  只需要类名+对象名即可· 如果有多个构造函数

类名+对象名(10,20)加上参数就好

7.构造函数以及定义的函数在类里面:

8.刚才在想用new与malloc 创造堆空间,为什么要用 int*p=new  int

指针指向呢

Person     *p= new  Person;/           (这里类型是Person  对象)

申请Person  这么大的空间;

9.作用不一定是初始化

10.

11.明确赋值 就是初始化

在类里面赋值 不仅仅是赋值,,换还有就是初始化 

12.

13

14.

多个构造函数

15.

16.

17.

18.

19.

20.

把viod也放在里面了

21.

c++ 的学习 构造函数1的更多相关文章

  1. C#学习-构造函数

    如果没有为类显式地定义一个构造函数,则C#编译器会自动生成一个函数体为空的默认无参的实例构造函数. 构造函数主要用于创建类的实例对象. 当调用构造函数创建一个对象时,构造函数会为对象分配内存空间,并初 ...

  2. jquery源码学习-构造函数(2)

    最近几天一直在研究jquery源码,由于水平太低看得昏头转向.本来理解的也不是很深刻,下面就用自己的想法来说下jquery是如何定义构造函数初始化的.如果有什么不对的地方,希望个位高手指出.  一般写 ...

  3. 【javascript基础】6、new与构造函数

    前言 上篇说创建对象的时候提到了带返回值的构造函数,那里没有和大家说这个问题,今天就和大家一起学习构造函数和new操作符.我也是最近才稍微弄明白点这个构造函数,以前总是忽略一些问题,现在就是想到哪块不 ...

  4. 《JAVA学习笔记(1---13-4)》

    [1]问题: 1.什么叫做面向过程? 2.什么叫做面向对象? 解答: 1: 所谓的面向过程就是我们是一个执行者,我们要开发一个项目,这个项目要求要实现很多功能,作为执行者的我们就需要 去一个一个的找这 ...

  5. java学习笔记(详细)

    java平台 1.J2SE java开发平台标准版 2.J2EE java开发平台企业版 java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序.不同系统上要安装对应的虚 ...

  6. JavaScript之构造函数

    在学习构造函数之前我们需要知道我们学习构造函数需要学习什么: 1.什么是构造函数  2.构造函数用来做什么 3.构造函数的执行过程  4.构造函数的返回值 1.所以首先我们需要知道什么是构造函数: 在 ...

  7. code of C/C++(2)

    初学者学习构造函数和析构函数,面对如何构造的问题,会头大.这里提供了变量(int,double,string),char *,字符数组三个类型的私有成员初始化的方法 //char * 类型的成员,如何 ...

  8. 《java笔记 day07》

    //匿名对象_1 class Car { //描述属性: String color; int number; //描述行为: void run() { System.out.println(color ...

  9. 《agile java》First : 起步 + 章节练习题

    第一章节:起步 1.创建简单Java类2.创建测试类3.使用JUnit4.学习构造函数5.重构代码 涉及知识:TDD.UML TDD: Test Driven Development, 测试驱动开发. ...

随机推荐

  1. redis并发锁

    1.应对并发场景 避免操作数据不一致 将对redis加锁 2.考虑到异常状况无法释放锁,导致死锁 将代码块进行try-catch处理 3.考虑try时宕机依然导致死锁 对锁添加时效性,添加过期时间 4 ...

  2. clojure配置

    1.转换clojure工程为eclipse工程 Install Counterclockwise plugin in Eclipse (from eclipse marketplace). This ...

  3. Flink DataStream API 中的多面手——Process Function详解

    之前熟悉的流处理API中的转换算子是无法访问事件的时间戳信息和水位线信息的.例如:MapFunction 这样的map转换算子就无法访问时间戳或者当前事件的时间. 然而,在一些场景下,又需要访问这些信 ...

  4. centos 搭建jenkins+git+maven

      git+maven+jenkins持续集成搭建 发布人:[李源]  2017-12-08 04:33:37   一.搭建说明 系统:centos 6.5 jdk:1.8.0_144 jenkins ...

  5. Go并发控制--WaitGroup篇

    目录 1. 前言 2. 使用WaitGroup控制 2.1 使用场景 2.2 信号量 1.3 WaitGroup 数据结构 2.3.1 Add () 方法 2.3.2 Wait() 2.3.3 Don ...

  6. deepin-terminal改造风云再起

    1. 创作背景 使用deepin-terminal的时候,我发现一些小的问题. 在论坛的帖子(https://bbs.deepin.org/zh/post/224502)也总结反馈了这些问题 终端标签 ...

  7. Go语言 判断key是否在map里 if _, ok := map[key]; ok

    if val, ok := map[key]; ok { //do something here } 如果key在map里 val 被赋值map[key] ok 是true 否则val得到相应类型的零 ...

  8. maven下载出错

    求解

  9. Linux查看英伟达GPU信息

    命令: nvidia-smi 结果:

  10. 迭代器生成器阅读【Python3.8官网文档】

    目录 1.迭代器 2.生成器 2.1.yield 表达式 2.2.简要理解概念 2.3.生成器-迭代器的方法 2.4.生成器理解 2.5.例子 3.生成器表达式 1.迭代器 for element i ...