C++ newdelete
#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相关推荐
- 学习笔记:c++ newdelete关键字及其自定义
文章目录 一.new运算符说明 1.作用 2.标准库函数 3.运行原理: 4.常见用法: 5.size_t如何传递 二.delete函数 1.作用 2.标准库函数 3.运行原理: 4.常见用法: 三. ...
- 一次并行化实践——通过重写全局newdelete操作符
最近在做一个功能,计算量很大,需要把程序并行化以利用多核优势. 现象 刚开始是使用OpenMP,在我的机器上,4C8T的i7,CPU可以达到90%以上,在任务管理器的小图标里看着就跟把CPU占满了一样 ...
- New-delete
1.new和delete 程序的内存分为不同的区: 全局变量区中的变量在程序编译时决定,不需要管理内存: 局部变量一般存放在栈中,当用到时放入栈中,不用时栈中的地址处变成垃圾数据,也不需要管理: 而用 ...
- C++核心编程(一)
C++ 核心编程 本系类列博客都是根据黑马的C++视频做的笔记. 本阶段主要针对C++面向对象编程技术做详细记录,探讨C++中的核心和精髓. 1.内存分区模型 C++程序在执行时,将内存大方向划分为4 ...
- CUDA Samples目录
简介 Simple Reference 基础CUDA示例,适用于初学者, 反映了运用CUDA和CUDA runtime APIs的一些基本概念. Utilities Reference 演示如何查 ...
- hbase建索引java api_hbase java api样例(版本1.3.1,新API)
hbase版本:1.3.1 目的:HBase新API的使用方法. 尝试并验证了如下几种java api的使用方法. 1.创建表 2.创建表(预分区) 3.单条插入 4.批量插入 5.批量插入(客户端缓 ...
- 如何在Git中克隆所有远程分支?
我有一个master和一个development分支,都被推送到GitHub . 我已经clone d, pull ed和fetch ed,但是除了master分支以外,我仍然无法获得任何东西. 我敢 ...
- linux下C++动态链接C++库示例详解
注意其中使用函数返回基类指针的用法,因为Linux的动态链接库不能像MFC中那样直接导出类 一.介绍 如何使用dlopen API动态地加载C++函数和类,是Unix C++程序员经常碰到的问题. 事 ...
- ContentProviderOperation批量操作提升性能
原文出处:http://blog.csdn.net/imuhao/article/details/52002995 ContentProviders 是Android 系统核心组件之一,Content ...
最新文章
- 使用thymeleaf中超链接失效
- Hadoop服务器集群安装部署及配置
- java final 意思_在java中一个类被声明为final类型,表示的意思是()。
- [深度学习] 面试常见问题+解析汇总
- Python 输出HTML实体字符(#x***转html,html符号乱码,中文乱码)
- matplotlib plot 绘图函数发生阻塞(block)时的解决方法
- Linux -lvm -扩容、缩容逻辑卷(针对xfs)
- python类和对象实验报告_python类和对象
- CAN通讯、CAN协议、UDS
- 人工智能与心理学(人工智能最终方向)
- Failed to compile../public/UEditor/dialogs/template/template.html 1:0Module parse failed: Unexpec
- matlab中双引号_在matlab中单引号和双引号各有什么意义?为什么有的函数参数要加单引号,有的要加双引号?...
- 命令行修改windows壁纸
- TIOBE Index for November 2016(2016年11月编程语言排行榜)
- 7、TM4单片机学习之串口功能
- js ... es6中三个点是什么意思 真名叫扩展运算符
- (一)ssh远程连接服务器GPU以及其他GPU使用途径——新手指南
- 关于自己的转正述职报告
- [SRS+docker]实现直播服务器 3 基于webRTC协议的srs低延迟直播研究
- Joost大行其道 P2P网络电视颠覆传统电视工业?
热门文章
- 二分法以及random函数使用
- php中split的使用,php中常用字符串的用法总结 - split
- 如果数组最后一项为空删除最后一项和去前面的逗号_手写数组方法
- inset() php,inset.php · L@Y/studentscoremanagementsystem - Gitee.com
- Python+django网页设计入门(16):优化设计复用分页代码
- 详解Python中的序列解包(2)
- 开源 php 报表,php网站流量统计系统-开源系统 | 学步园
- oracle显示linesize,SQL Plus输出结果的格式化(linesize、pagesize)
- 韶关学院2020年计算机科学与技术分数线,韶关学院2019录取分数线预测
- matlab 请验证三角等式,[转载]matlab