C ++类中的动态内存分配

我确信有这个问题的替代解决方案,但我真的很想明白为什么我的解决方案无法正常工作

int n;
class Segtree
{

   public:
    int *s, size, h, *cl, *t; string a;
    int open, close, total;

    void init(string input,int siz)
    {
       size = siz;
       n = size;
       t = new int[size * 4];
       cl = new int[size * 4];
       s = new int[size * 4];
       a = input;
       build();
    };
}

我动态地分配内存给类中的数组,但是我在内存分配中遇到了一些错误,你可以在这里的结果中找到它。
在此之后,我静态分配内存。 在课堂内部,但每次我在所有3个数组中分配10 ^ 6大小的数据时,我都会出现段错误。 请注意,如果数组已全局化,则不会发生此段错误。 在一个类中为int数组分配10 ^ 7大小的好方法是什么?

链接地址: http://www.djcxy.com/p/72925.html

上一篇: Dynamic memory allocation in C++ class

下一篇: Dynamically allocating a 2D array of object pointers in a class