为了账号安全,请及时绑定邮箱和手机立即绑定
  • Array printInfo();要求返回值类型是一个对象,而Array Array::printInfo(){return *this}的返回值就是一个对象。 this指针系统会自己加 Array Array::printInfo(){return *this;}返回出去之后的*this指针是一个临时的对象,并不是arr1 Array& Array::printInfo(){return *this;}这样返回出去的就是arr1了。 加入引用之后,一切都清晰起来了 使用点号可以将多个方法穿起来使用 如果用的是&,返回值要加*,即为*this,使用函数是用点号 如果用的是*,即为指针,返回值不用加* ,即为this,使用函数是用->
    查看全部
  • 数据成员和参数的在表达同一个意思的时候用的不同的名字 参数与数据成员重名会怎么样:当然是报错了 标记参数或者标记数据成员的技术,就是this指针的用处 this指针就是指向对象自身数据的指针 this指针表达什么意思,要看放在什么位子,写在谁的里面就是谁的地址,比如写在arr1中,this指针就是arr1的地址 通过this指针可以访问到它表达的对象的自身的任何数组 this指针的好处是可以标记自身的数据成员 如果想用和数据成员重名的参数,在数据成员前面加this->就可以 对象可以有多个,然后可以去调用成员函数,代码区只有一个,对象都是从代码区调用的,没有出现混乱就是因为this指针 每个成员函数都有this指针,系统加的
    查看全部
    0 采集 收起 来源:[C++]this指针

    2018-03-22

  • ->是指针的符号
    查看全部
  • 对象成员是一个类的对象成为了另外一个类的数据成员。<br> 对象成员指针是对象的指针作为了另外一个类的数据成员了。 line中有两个指针,每个指针占4位,而指针指向m_iX 和m_iY,m_iX 和m_iY共占8位,sizeof(line)计算的是指针的所占大小
    查看全部
  • 同样的访问限定符可以出现多次。用指针新建对象的时候,如果是默认的构造函数,后面的括号可以不写。 将*p括起来就变成了一个对象(*p),访问的时候就可以以对象的方式访问数据成员了。 p1->和(*p1)是一样使用的 对象指针往往会指向一段内存,如果内存时从堆中申请来的,使用结束之后一定要归还给系统,否则会内存泄漏。
    查看全部
  • 对象指针,即为一个指针指向一个对象
    查看全部
    0 采集 收起 来源:[C++]对象指针

    2016-09-14

  • 当没有自己定义的时候,系统都会自动生成。但是系统生成的构造函数和析构函数是空函数,没有实际作用。定义构造函数可以发给类成员设置默认值等等,同样的,如果我们的类数据成员包含了从堆中申请的内存,类的析构函数就应当加入包含释放堆中内存的语句。或者我们需要程序在对象解散时在屏幕上输出提示信息,也可以在类的析构函数中加入提示信息。
    查看全部
    0 采集 收起 来源:[C++]对象成员

    2016-09-13

  • 实例化对象数组时,每一个对象的构造函数都会被执行 实例化对象数组时,内存既可以从堆中分配,也可以从栈上分配 销毁对象数组时,每一个对象的西沟函数都会被执行 堆中实例化的数组需要手动销毁释放内存,在栈中实例化的数组,系统自动回收内存
    查看全部
    0 采集 收起 来源:练习题

    2016-09-13

  • delete时没有[]将只会清除第一个元素的内存 会造成内存泄露 如果是堆中开辟了对象数组,delete p 则销毁的是第一个元素, delete []p 则会销毁一个对象数组
    查看全部
  • 一个对象可以有多个对象引用 常对象只能调用常成员函数,不能调用普通成员函数 普通对象能够调用常成员函数,也能够调用普通成员函数 常指针和常引用都只能调用对象的常成员函数。
    查看全部
    0 采集 收起 来源:练习题

    2016-09-12

  • Coordinate * const pCoor = &coor1 : 这种方式定义的常指针“只能指向coor1,但可以调用coor1的不同的函数”;(拥有读写权限) const Coordinate *pCoor = &coor1 : 只能调用coor1的“常成员函数”。(只拥有读权限)
    查看全部
  • 、常成员函数的本质是内部使用常this指针。 2、常成员函数内使用数据成员时,不能改变数据成员的值。 3、常成员函数中可以使用普通的数据成员,但是不能改变对象成员的值 4、常成员函数内不能调用普通的成员函数。
    查看全部
    0 采集 收起

    2016-09-12

  • 记住:我们设置了类,但是设置许多实例化的对象通过构造函数,拷贝构造函数实现数据与数据成员的赋值,旧的对象与新的对象之间的联系,多个对象可以调用同一个类中的成员函数,其放置在代码区并不受影响,对于我们来说,我们关心成员函数的输出,申请一个新对象既是开辟一个新的内存单元存储数据成员以使对象之间区别出来。 这些基础上穿插了对象数组,对象成员,对象成员指针,研究的其实还是不同的数据成员与成员函数之间的新关系。课里为我们演示了构造函数,拷贝构造函数,析构函数的使用原理,也讲述了栈和堆的不同,希望自己能分清楚。
    查看全部
  • 深拷贝的工作是首先要申请一块内存,然后需要将传入进来的对象对应位置的内存拷贝到申请的内存中去
    查看全部
  • 浅拷贝的原理就是将值直接拷贝过去,有指针的时候使用浅拷贝就会造成一些问题。
    查看全部

举报

0/150
提交
取消
课程须知
本课程是C++初级课程 需要掌握C++语言基础语法 如果不太熟悉的话,可以观看: 《C++远征之起航篇》 《C++远征之离港篇》 《C++远征之封装篇(上)》
老师告诉你能学到什么?
1、对象数组的定义和使用 2、对象成员的定义和使用 3、深拷贝和浅拷贝 4、对象指针、对象引用的定义和使用 5、常对象指针、常对象引用、常成员函数的定义和使用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!