#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
using namespace std;class Person
{public:Person(){cout << "无参构造" << endl;}Person(int a){cout << "有参构造" << endl;}~Person(){cout << "析构函数" << endl;}
};void test01()
{//Person p1;  默认对象是在栈区开辟Person * p2 = new Person; //堆区开辟//1.所有new出来的对象 都会返回该类型的指针,malloc只会返回void指针,所以还需要强转//2.malloc不会调用构造函数而new会调用构造//3.new,delete是运算符  malloc,free是函数,各自配合使用,不要混用delete p2;
}
void test02()
{//通过new开辟数组 一定会调用默认构造函数,所以一定要提供默认构造Person * pArray = new Person[10];//Person pArray2[2] = { Person(1), Person(2) }; //在栈上开辟数组,可以指定有参构造//释放数组 delete []delete[] pArray;
}int main() {//test01();test02();system("pause");return EXIT_SUCCESS;
}

C++ newdelete相关推荐

  1. 学习笔记:c++ newdelete关键字及其自定义

    文章目录 一.new运算符说明 1.作用 2.标准库函数 3.运行原理: 4.常见用法: 5.size_t如何传递 二.delete函数 1.作用 2.标准库函数 3.运行原理: 4.常见用法: 三. ...

  2. 一次并行化实践——通过重写全局newdelete操作符

    最近在做一个功能,计算量很大,需要把程序并行化以利用多核优势. 现象 刚开始是使用OpenMP,在我的机器上,4C8T的i7,CPU可以达到90%以上,在任务管理器的小图标里看着就跟把CPU占满了一样 ...

  3. New-delete

    1.new和delete 程序的内存分为不同的区: 全局变量区中的变量在程序编译时决定,不需要管理内存: 局部变量一般存放在栈中,当用到时放入栈中,不用时栈中的地址处变成垃圾数据,也不需要管理: 而用 ...

  4. C++核心编程(一)

    C++ 核心编程 本系类列博客都是根据黑马的C++视频做的笔记. 本阶段主要针对C++面向对象编程技术做详细记录,探讨C++中的核心和精髓. 1.内存分区模型 C++程序在执行时,将内存大方向划分为4 ...

  5. CUDA Samples目录

    简介 Simple Reference  基础CUDA示例,适用于初学者, 反映了运用CUDA和CUDA runtime APIs的一些基本概念. Utilities Reference  演示如何查 ...

  6. hbase建索引java api_hbase java api样例(版本1.3.1,新API)

    hbase版本:1.3.1 目的:HBase新API的使用方法. 尝试并验证了如下几种java api的使用方法. 1.创建表 2.创建表(预分区) 3.单条插入 4.批量插入 5.批量插入(客户端缓 ...

  7. 如何在Git中克隆所有远程分支?

    我有一个master和一个development分支,都被推送到GitHub . 我已经clone d, pull ed和fetch ed,但是除了master分支以外,我仍然无法获得任何东西. 我敢 ...

  8. linux下C++动态链接C++库示例详解

    注意其中使用函数返回基类指针的用法,因为Linux的动态链接库不能像MFC中那样直接导出类 一.介绍 如何使用dlopen API动态地加载C++函数和类,是Unix C++程序员经常碰到的问题. 事 ...

  9. ContentProviderOperation批量操作提升性能

    原文出处:http://blog.csdn.net/imuhao/article/details/52002995 ContentProviders 是Android 系统核心组件之一,Content ...

最新文章

  1. 使用thymeleaf中超链接失效
  2. Hadoop服务器集群安装部署及配置
  3. java final 意思_在java中一个类被声明为final类型,表示的意思是()。
  4. [深度学习] 面试常见问题+解析汇总
  5. Python 输出HTML实体字符(#x***转html,html符号乱码,中文乱码)
  6. matplotlib plot 绘图函数发生阻塞(block)时的解决方法
  7. Linux -lvm -扩容、缩容逻辑卷(针对xfs)
  8. python类和对象实验报告_python类和对象
  9. CAN通讯、CAN协议、UDS
  10. 人工智能与心理学(人工智能最终方向)
  11. Failed to compile../public/UEditor/dialogs/template/template.html 1:0Module parse failed: Unexpec
  12. matlab中双引号_在matlab中单引号和双引号各有什么意义?为什么有的函数参数要加单引号,有的要加双引号?...
  13. 命令行修改windows壁纸
  14. TIOBE Index for November 2016(2016年11月编程语言排行榜)
  15. 7、TM4单片机学习之串口功能
  16. js ... es6中三个点是什么意思 真名叫扩展运算符
  17. (一)ssh远程连接服务器GPU以及其他GPU使用途径——新手指南
  18. 关于自己的转正述职报告
  19. [SRS+docker]实现直播服务器 3 基于webRTC协议的srs低延迟直播研究
  20. Joost大行其道 P2P网络电视颠覆传统电视工业?

热门文章

  1. 二分法以及random函数使用
  2. php中split的使用,php中常用字符串的用法总结 - split
  3. 如果数组最后一项为空删除最后一项和去前面的逗号_手写数组方法
  4. inset() php,inset.php · L@Y/studentscoremanagementsystem - Gitee.com
  5. Python+django网页设计入门(16):优化设计复用分页代码
  6. 详解Python中的序列解包(2)
  7. 开源 php 报表,php网站流量统计系统-开源系统 | 学步园
  8. oracle显示linesize,SQL Plus输出结果的格式化(linesize、pagesize)
  9. 韶关学院2020年计算机科学与技术分数线,韶关学院2019录取分数线预测
  10. matlab 请验证三角等式,[转载]matlab