C++ new

作者: JingWenxing | 来源:发表于2019-05-06 14:28 被阅读0次

    new的过程说明:

    获得一块内存空间、调用构造函数、返回正确的指针。

    初始化:

    int *a = new int;
    float *a = new float(2.3333);
    char *a = new char[10];
    

    二维数组:

    //列值固定
    const int MAXCOL = 3;
    int row;
    cin >> row;
    //申请一维数据并将其转成二维数组指针
    int* pp_arr = new int[row * MAXCOL];
    int(*p)[MAXCOL] = (int(*)[MAXCOL])pp_arr;
    //此时p[i][j]就可正常使用
    
    cin>>row>>col;
    int *p = new int[row*col];         // 这种是当成一维数组连续开辟的
    for (int i = 0; i < row; i++)
        for (int j = 0; j < col; j++)
            p[i * (row + 1) + j] = 0;  // 如此访问
    

    参考资料:

    C++new的用法

    [C/C++] C++中new的语法规则

    相关文章

      网友评论

          本文标题:C++ new

          本文链接:https://www.haomeiwen.com/subject/iujroqtx.html