zoukankan      html  css  js  c++  java
  • C++使用new和不使用new创建对象区别

    前言

    在使用面向对象的时候,发现使用new和不使用new创建的对象区别还是蛮大的,做个总结;

    总结

    • new创建的是一个指向类对象的指针,需要指针进行接收,一处初始化,多处使用,但是不用new创建的话不需要指针,其创建的是一个类对象;
    • new创建一个实例对象,并且指针指向该对象,作用域变成了全局,使用完时需要用delete进行销毁;但是不用new创建的话,是一个对象的引用,作用域限制在定义类对象的方法中,当方法结束的时候,类对象会被系统自动释放掉,不会造成内存泄漏;
    • new创建对象直接使用堆空间,而局部不用new定义类对象则使用栈空间;
    • new对象指针用途广泛,比如作为函数返回值,函数参数等等;
    • 频繁调用场合并不适合使用new,就像new申请和释放内存一样;
    • new创建的话可以先置为空,后面再指向类对象,但是不用new的话不行,其创建的时候就要进行初始化,后面就不能再进行改变;
  • 相关阅读:
    webpack学习笔记(五)
    webpack学习笔记(四)
    webpack学习笔记(三)
    directives 自定义指令
    css面试--基础
    css面试--H5移动端
    vue watch和computed的使用场景
    JS继承的实现方式
    js面试--ajax与性能优化
    js面试--概念
  • 原文地址:https://www.cnblogs.com/George1994/p/6399881.html
Copyright © 2011-2022 走看看