dynamic-memory-allocation相关内容
我知道有关动态分配/取消分配2D数组的算法,但是对于3D阵列我并不太了解。 使用这种知识和一些对称性,我想出了以下代码。 (在编码时我很难在3D中进行可视化)。 请评论正确性,并建议任何更好的选择(效率或直觉),如果有的话。 另外,我认为这两个2D像数组arr2D [2] [3]和 arr3D [2] [3] [2]这样的静态数组就可以正常访问3D数组。对? 2
..
我今天遇到这个bug,原来是因为在调用 FreeLibrary()之后,我使用从我的DLL 中分配的字符串 / p> 这是一个简单的例子来重现崩溃。这在DLL中: void dllFunc(char ** output) { * output = strdup (“你好”); // strdup使用malloc } 这是在EXE中加载DLL: / p>
..
有人可以清楚地解释如果从 __ device __ 或 __ global __ 调用新的和删除关键字的行为,代码在CUDA 4.2? 内存分配在哪里,如果它在设备上是本地还是全局? 它的问题的上下文条件我试图在GPU上创建神经网络,我想要一个链接的表示(像一个链表,但每个神经元存储一个链接持有权重的连接列表,以及指向其他神经元的指针),我知道我可以在内核启动之前使用 cudaMall
..
已建议在C ++ 1y中包含大小调整功能。但是,我想了解如何影响/改进 当前的c ++ 低级内存管理 p> 此提案位于 N3778 strong>,程序员可以定义一个静态成员函数操作符 delete,它使用一个大小参数指示要删除的对象 的大小。等效全局运算符delete不可用。 此省略具有不良的性能后果。 现代内存分配器通常按大小类别分配,对于 空间效率原因,不存储 对象附近
..
我已经摆脱了工作,因为他们分心的代码。 我想做的是为一个3D数组分配一块内存。 这是我当前的代码片段: //创建一个正确大小的数组 //我首先创建一个指针数组 phi = new double ** [xlength ]; //然后创建另一个指针数组 phi [0] = new double * [xlength * ylength]; //此时,我假设phi [0]
..
我认为它释放了先前分配的内存,但我可能错了: class Person { public : Person(string,int,double); 〜Person(); int age string name; double weight; }; int main(){ Person * p = new Person(“Jane”,20,130); cou
..
我尝试使用指针和动态内存分配来运行泡沫排序技术,但是代码似乎没有运行(eclipse崩溃)。请帮忙。我发布的代码如下: #include using namespace std; void sort(int *); // ======================================== === int main() { int
..
我包含了一个源代码,你可以自己编译并查看问题。编译g ++ -lpthread list-memchk.cpp -o list-memchk 运行此示例,./list-memchk 43000000 30000000 10 包含三个文件,第一个 list-memchk.cpp #include #include #incl
..
我是MPI的新手。我写了一个简单的代码来显示使用多进程的矩阵。假设我有一个8x8的矩阵,并启动MPI程序与4个进程,第一2行将打印我的第一个过程第二组2行将打印第二线程等等通过划分自己。 #define S 8 MPI_Status状态; int main(int argc,char * argv []) { int numtasks,taskid; int i,j
..
我有这个3D矩阵,我分配为一块内存,但当我尝试写入darn的东西,它给我一个分段的错误。这件事对两个维度工作正常,但由于某种原因,我有麻烦的第三个...我不知道在分配的错误在哪里。 以下是代码: phi = new double ** [xlength]; phi [0] = new double * [xlength * ylength]; phi [0] [0] = ne
..
我有类Person,如下: class Person { char * name; int age }; 现在我需要添加两个造型。一个不带参数,将字段值插入动态分配的资源。第二次取(char *,int)由初始化列表初始化的参数。最后一部分是定义一个析构函数,显示有关销毁对象和解除动态分配资源的信息。如何执行此任务? 这是我已经有的: clas
..
我有一个集合类,可以多态地保存和管理任何类型的Multinumber。这可以是类型为Pair,Rational或Complex的对象。我遇到的问题是,这个类需要动态内存管理,在许多情况下,如下面的功能,我不知道要分配什么类型。因为集合是类型不可知的,我不知道我应该做Multinumber * var = new Complex,Rational或Pair。有什么方法来检查我首先添加的类型,或将此信
..
我有一个简单的程序 $ cat a.cpp #include class MyClass { public: virtual void check(){ std :: cout
..
我有一个简单的程序 $ cat a.cpp #include class MyClass { public: virtual void check(){ std :: cout
..
我有一个简单的程序 $ cat a.cpp #include class MyClass { public: virtual void check(){ std :: cout
..
我很困惑这个。如何从操作符函数返回动态分配的对象? 考虑下面的例子: #include“stdafx.h” #include #include“vld.h” using std :: cout; class Point { public: Point(int x,int y):a(x),b(y) {} () {} 点运算符+(Point
..
我很困惑这个。如何从操作符函数返回动态分配的对象? 考虑下面的例子: #include“stdafx.h” #include #include“vld.h” using std :: cout; class Point { public: Point(int x,int y):a(x),b(y) {} () {} 点运算符+(Point
..
我正在一个堆栈类和有两个构造函数。一个感兴趣的是这一个。 template :: stack(const int n) { capacity = n; size = 0; arr = new T [capacity]; } 我在main里面调用它。 stack s1(3);
..
我有一个类Bullet,它的构造需要几个参数。但是,我使用动态存储器阵列来存储它们。我使用C ++,所以我想符合它的标准通过使用新的运算符来分配内存。问题是,当我分配数组时,新操作符要求构造函数参数,我当时没有。我可以使用malloc获得正确的大小,然后在那里填写表单,但这不是我想使用:)任何想法。 pBulletArray =(Bullet *)malloc(iBulletArraySi
..
我正在做一个关于二维bin包装算法的研究。我曾询问关于PHP性能的类似问题,它的打包太慢了,现在代码是转换为C ++。 仍然很慢。我的程序所做的是分配动态内存块,并用字符'o'填充它们。 char * bin = new(nothrow)char [area]; if(bin == 0){ cout
..