为了账号安全,请及时绑定邮箱和手机立即绑定
  • 静态数据成员和静态成员函数的注意事项
    查看全部
    0 采集 收起 来源:[C++]静态

    2017-08-16

  • 静态数据成员必须单独初始化 静态成员函数不能调用非静态成员函数和非静态数据成员 非静态成员函数可以调用静态成员函数和静态数据成员 静态数据成员不依赖于对象而存在,仅此一份。
    查看全部
    0 采集 收起 来源:[C++]静态

    2017-08-16

  • 友元注意事项
    查看全部
    0 采集 收起 来源:[C++]友元类

    2017-08-16

  • 友元全局函数,使用引用和指针较好
    查看全部
    1 采集 收起 来源:单元巩固

    2017-08-16

  • 静态成员函数不能是常成员函数,因为const修饰的是隐藏的this指针,而static 静态成员函数是不依赖于对象而存在的。因此用const 修饰static函数必然会出现问题。
    查看全部
  • 静态数据成员必须单独初始化 静态成员函数不能调用非静态成员函数和非静态数据成员 非静态成员函数可以调用静态成员函数和静态数据成员 静态数据成员不依赖于对象而存在,仅此一份。
    查看全部
    0 采集 收起 来源:[C++]静态

    2017-08-15

  • 但是看了这一节,发现后置++的返回值是对象而非引用,因为,如果返回是引用,那么返回的是一块临时变量(old)的引用,当后置++的函数调用结束后,该临时变量会被自动释放掉,那么返回的引用的值就会是一个-37983219之类的为初始化的值了,发生bug。 所以总结就是,能用引用的尽量用引用,是在不行的就返回对象。
    查看全部
  • 而返回对象会有连续赋值失败的风险,参见http://www.cnblogs.com/codingmengmeng/p/5871254.html。所以还是老老实实返回引用类型
    查看全部
  • 如果要求运算符能实现连续赋值,那重载函数的返回值必须不为空void,返回类型可以是对象或引用,但是一般都规范使用引用,这样可以减小内存开销提高效率。若返回值是void(即空),那么就无法连续赋值,会报错。返回值不为空的函数被调用时,不一定要用别的对象来接收返回值,如果没有接收的对象,那么该临时返回值尤其是返回的是对象而非引用时,在其作用域结束时就会被释放掉。具体见http://www.cnblogs.com/codingmengmeng/p/5871254.html
    查看全部
  • A:事实上,我们的重载运算符返回void、返回对象本身、返回对象引用都是可以的,并不是说一定要返回一个引用,只不过在不同的情况下需要不同的返回值。 那么什么情况下要返回对象的引用呢? 原因有两个:1.允许进行连续赋值2.防止返回对象(返回对象也可以进行连续赋值)的时候调用拷贝构造函数和析构函数导致不必要的开销,降低赋值运算符等的效率。 对于第二点原因:如果用”值传递“的方式,虽然功能任然正确,但由于return语句要把*this拷贝到保存返回值的外部存储单元之中,增加了不必要的开销,会降低赋值函数的效率。 B:用友元函数重载时,参数之所以用引用类型,也是因为原因2,为了降低开销,提高效率。
    查看全部
  • F7是编译,F5是调试
    查看全部
  • 但是静态数据成员可以用const修饰,成为静态常数据成员,一旦被赋值就不能再修改。 另外,常成员函数实质上是用const修饰了this指针,所以内部不能修改(this指向的对象的)普通数据成员,更无法修改不能改值得常数据成员,无法调用普通成员函数,但是对于类全局的静态非常数据成员是可以修改的,也可以调用别的常成员函数。
    查看全部
  • 静态成员函数不可以调用非静态数据成员和非静态成员函数,因为非静态数据成员只有在实例化对象时才生成,非静态成员函数实际有this指针作为参数。
    查看全部
  • 静态成员函数不可用const修饰,因为const修饰的本质是用const修饰this指针,然而静态成员函数是全局的,根本没有this指针
    查看全部
  • 静态数据成员必须单独初始化;静态不能调用非静态,非静态可以调用静态;静态数据成员只有一份,值可以改变,但个数不会变
    查看全部
    0 采集 收起 来源:[C++]静态

    2017-08-14

举报

0/150
提交
取消
课程须知
学习本课程需要有一定的C语言和C++语言基础。如基础不太扎实的同学可以,参与C++远征攻略的学习计划,友情链接 http://www.imooc.com/course/programdetail/pid/42
老师告诉你能学到什么?
1、友元函数及友元类的定义及使用方法 2、静态数据成员和静态成员函数的定义及使用方法 3、运算符重载的技巧 4、函数模板和类模板的定义及使用方法 5、标准模板库的使用方法及基本原理

微信扫码,参与3人拼团

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

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