zoukankan      html  css  js  c++  java
  • 记录,待总结4

    1.delete运算符只能删除堆中的空间,删除栈中的空间会导致出错
    例1:
    2.关于强制类型转换
    例2:

    输出:
    construct     0012FF38     //a的构造
    construct     0012FF34     //b的构造
    99
    construct     0012FF30     //临时对象的构造
    =     0012FF38             //赋值
    delete     0012FF30        //临时对象的析构
    1000
    construct     0012FF2C     //临时对象的构造
    =     0012FF38             //赋值
    delete     0012FF2C        //临时对象的析构
    2
    =     0012FF38             //赋值
    35
    delete     0012FF34        //
    delete     0012FF38        //
    解释:不管是显示类型转换还是隐式类型转换,都有以下一些共同点:
    1)先构造一个临时对象,把临时对象赋值给目标,然后析构临时对象
    2)由于要构造一个临时对象,必须要有只带一个参数的构造函数
    3)由于要用到赋值函数,当类中有指针成员时,要定义自己的复制控制函数

    3.前置自加与后置自加
    例3:

    解释:
    1)前置自加按引用返回。
    后置自加按值返回,且返回的是临时对象。
    2)后置自加中的参数没有实际意义,只是为了区分前置
    3)很显然前置自加效率更高,尽量用前置

    4.这是对例3的一个应该举例
    例4:

    输出:

    construct     0012FF38
    1
    copy     0012FF34
    2
    2
    copy     0012FEB8
    copy     0012FF30
    delete     0012FEB8
    delete     0012FF30
    2
    3
    delete     0012FF34
    delete     0012FF38
    解释:如果看懂了例3和前一篇文章,这个结果是很好理解的

  • 相关阅读:
    css3在不同型号手机浏览器上的兼容一览表
    android 常见分辨率(mdpi、hdpi 、xhdpi、xxhdpi )及屏幕适配注意事项
    web app iphone4 iphone5 iphone6 iphone6 Plus响应式布局 适配代码
    用sql查询当天,一周,一个月的数据
    VS2010 生成Xml格式的注释文档
    VS XML注释
    css3 box-sizing属性
    CSS技巧(一):清除浮动
    使用Windows Server 2003搭建一个asp+access网站
    如何在Windows Server 2003搭建Windows+iis+asp+access环境
  • 原文地址:https://www.cnblogs.com/windmissing/p/2559876.html
Copyright © 2011-2022 走看看