现在的位置: 首页 > 综合 > 正文

c++ 指针引用的传递,等等 qt -std=c++0x

2018年05月28日 ⁄ 综合 ⁄ 共 412字 ⁄ 字号 评论关闭

c++指针引用的传递 必须用模板实现

template <class T>
void ChangeSize1D(T * &a,int size,int ToSize){
    T *b = new int[ToSize];
    for(int i=0;i<ToSize&&i<size;i++){
        b[i] = a[i];
    }
    delete[] a;
    a = b ;
}

否则运行会报错。

Qt用c++新标准 在pro里添加QMAKE_CXXFLAGS += -std=c++0x 就可以了

int a[4];  sizeof(a)  等于16  是数组a的字节数

int *a = new int(4); sizeof(a) 等于4是一个int指针的字节数

1.在释放堆栈中c++基本数据(包括int,char.....结构体等)的存储空间时,不管是否是数组用delete都不会有错!而且能正常释放所有内存,不会导致内存泄露!

2.对象数组不能用delete,只能用delete[];

抱歉!评论已关闭.