new 分配的数据类型:内置数据类型、自定义数据类型。

如果不成功,则 new 将返回零或引发异常;编写自定义异常处理例程并调用 _set_new_handler运行库函数(以您的函数名称作为其参数),可更改此默认行为。

new 为 C++ 类对象分配内存时,将在分配内存后调用对象的构造函数。仅当类具有默认构造函数时,new 运算符才会创建对象的数组。

分配多维数组时,除第一个维度之外的所有维度必须是计算结果为正值的常量表达式;最左侧的数组维度可以是计算结果为正值的任何表达式。new 运算符分配数组时,第一个维度可为零 ,此时new 运算符返回一个唯一指针。

例子:分配一个二维数组,然后释放,数组的大小为 zhm x 10

    1、char (*p)[10] = new char[zhm][10]; delete[] p;

    2、int m=2,n=3; int **p = new int*[m]; for(int i=0;i<m;i++)  p[i] = new int[n];  ... for(int i=0;i<m;i++) delete[] p[i]; delete[] p;

    3、如果 2 这样写:int **p ; p =new int* [m] ;  for(int i=0;i<m;i++)  p[i] = new int[n]; 万万不可写成: (*p) =new int [m] ;

变量不能包含 const、volatile、类声明或枚举声明。 非法:volatile char * p = new volatile char[10];

new 运算符不会分配引用类型,因为这些类型不是对象。

new 运算符无法用于分配函数,但可用于分配指向函数的指针。 下面的示例 为 返回整数的函数 分配一个包含 7 个指针的数组,然后释放。

    int (**p)() = new (  int (*[7])()   ); delete *p;

    

C++ new运算符的更多相关文章

  1. shell运算符

    原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用. expr 是一款表达式计算工具,使用它能完成表达式的求值操作. #!/bin/bash v ...

  2. SQL Server-聚焦APPLY运算符(二十七)

    前言 其实有些新的特性在SQL Server早就已经出现过,但是若非系统的去学习数据库你会发现在实际项目中别人的SQL其实是比较复杂的,其实利用新的SQL Server语法会更加方便和简洁,从本节开始 ...

  3. java中的移位运算符:<<,>>,>>>总结

    java中有三种移位运算符 <<      :     左移运算符,num << 1,相当于num乘以2 >>      :     右移运算符,num >& ...

  4. 我的MYSQL学习心得(五) 运算符

    我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  5. .NET 基础 一步步 一幕幕[运算符、占位符、转义符]

      运算符.占位符.转义符 好吧,在五局全胜之后,终于升到了三个钻,距离一个星星还有一大段距离,忽然想起来今天的博客还没写,果断坑队友,来写博客了....感觉以后还是每天更新一篇比较好.要不晚上就该熬 ...

  6. ECMASCript2015 提案 stage-3的对象展开运算符

    看源码时看到如下的代码 export default { //通过mapActions将actions映射到methods里 methods: { ...mapActions([ 'updateSta ...

  7. JavaScript权威设计--JavaScript表达式与运算符,语句(简要学习笔记六)

    1.delete是一元操作符,用来删除对象属性或者元素. var a={ x:1, y:2 } delete a.x; //删除x属性 “x”in a //false:a对象中已经不存在x属性 ale ...

  8. JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)

    1.3种原始表达式     1.直接量:    1.23    //数字直接量                         “hello”    //字符串直接量                 ...

  9. LINQ to SQL语句(18)之运算符转换

    运算符转换 1.AsEnumerable:将类型转换为泛型 IEnumerable 使用 AsEnumerable<TSource> 可返回类型化为泛型 IEnumerable 的参数.在 ...

  10. El表达式的关系运算符

    El表达式的关系运算符: ==  对应  eq !=   对应  ne >    对应  gt <    对应  It

随机推荐

  1. [No0000150]VSVisualStudio提示图标,信号图标的含义

    其右侧的图标表示这是一个接口类型__interface(或者是结构体类型) 其右侧图标表示这是一个类类型 其右侧图标表示这是一个.cpp文件(貌似还可以是.hpp等文件) 其右侧图标表示这是一个枚举类 ...

  2. Transfrom笔记

    1.在不是以左上角为缩放点进行缩放时,其实比例不能为0,因为0将导致缩放可能出现动画效果不可控,务必选取0.1等较小值来变化

  3. git 新建工程

    之前的一篇文章 https://www.cnblogs.com/wjw-blog/p/7189730.html,按照流程能搭建好git仓库,有时候会有一些小问题. 按照这个流程:-在github 上新 ...

  4. Linux Semaphore

    目录 主要用到的几个函数 0, ftok 1, semget 2, semctl 3, semop 程序semp1.c 程序semp2.c 主要用到的几个函数 0, ftok ftok - conve ...

  5. webstorm背景颜色更改

    一.file --> settings 二.editor-->color scheme  然后右边下拉选择 三.apply -- > ok

  6. Qt::带返回值的信号发射方式

    一般来说,我们发出信号使用emit这个关键字来操作,但是会发现,emit并不算一个调用,所以它没有返回值.那么如果我们发出这个信号想获取一个返回值怎么办呢? 两个办法:1.通过出参形式返回,引用或者指 ...

  7. Java中包装类型和基本类型的使用场景(什么时候使用包装类型)(转)

    说明:最简单的理解,基本类型有默认值,而包装类型初始为null.然后再根据这两个特性进行分业务使用,在阿里巴巴的规范里所有的POJO类必须使用包装类型,而在本地变量推荐使用基本类型. Java语言提供 ...

  8. Apache Spark支持三种分布式部署方式 standalone、spark on mesos和 spark on YARN区别

    链接地址: http://dongxicheng.org/framework-on-yarn/apache-spark-comparing-three-deploying-ways/ Spark On ...

  9. Python网络爬虫第三弹《爬取get请求的页面数据》

    一.urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在Python3中的为urllib.request和urllib. ...

  10. vue package-lock.json的作用

    其实用一句话来概括很简单,就是锁定安装时的包的版本号,并且需要上传到git,以保证其他人在npm install时大家的依赖能保证一致.