1. 异常和标准 C 对它的支持...............................................................................................2 2. Microsoft 对异常处理方法的扩展..............................................................................12 3. 标准 C++异常处理的基本语法和语义...........
new和delete的内部实现
C++中如果要在堆内存中创建和销毁对象需要借助关键字new和delete来完成。比如下面的代码
class CA
{
public:
CA()m_a(0){}
CA(int a):m_a(a){}
virtual void foo(){ cout<<m_a<<endl;}
int m_a;
};
void main()
{
CA *p1 = new CA;
CA *p2 = new CA(10);
CA *p
1,new 关键字和 malloc 函数区别(自己、功能、应用):
1,new 关键字是 C++ 的一部分:
1,如果是 C++ 编译器,则肯定可以用 new 申请堆空间内存;
2,malloc 是由 C 库提供的函数:
1,如果没有相应的库,malloc 将不能使用;
2,有些特殊的嵌入式开发中,少了 C 库,则就不能动态内存分配;
3,new 以具体类型为单位进行内存分配;
1,面向对象中一般用 new,不用 m
new和delete运算符用于动态分配和撤销内存的运算符
new用法:
1.开辟单变量地址空间1)new int; //开辟一个存放数组的存储空间,返回一个指向该存储空间的地址.int *a = new int 即为将一个int类型的地址赋值给整型指针a.
2)int *a = new int(5) 作用同上,但是同时将整数赋值为5
2. 开辟数组空间一维: int *a = new int[100];开辟一个大小为100的整型数组空间二维: int **a = new int[5][6]