ICode9

精准搜索请尝试: 精确搜索
  • c – 删除使用new创建的2D或3D指针2019-07-31 03:05:39

    如何删除使用new创建的2D或3D指针?我知道删除[] name_of_pointer可以删除1D指针. // 1D pointer: int *pt1 = new int[size]; // Creating 1D pointer delete [] pt1; // Deleting 1D pointer // 3D pointer L: # of layers, R: # of rows,

  • c – 使用双指针进行动态分配2019-07-30 05:08:01

    我有一个基类玩具和派生类Toy_remote_car和Toy_battery_car. 我这样做: Toy** ptr; ptr=new Toy*; ptr[0]=new Toy_remote_car[1]; ptr[1]=new Toy_battery_car[1];/*this is completely wrong according to my teacher because i never created ptr[1]. Instead this is a misuse

  • c – 运算符在窗口中重新加载2019-07-30 04:06:28

    我正在尝试替换全局运算符new和delete.在Linux中,这工作正常,但在Windows(MSVC 10)中,它有时使用operator new的系统版本进行分配,然后尝试使用operator delete删除它.由于我在分配时存储了一些上下文信息,因此我的运算符delete在重新分配期间期望相同.我如何确保窗户始终保持我的

  • c – 初始化inplace对象的Placement2019-07-29 23:05:41

    我最近遇到了一个相当有趣的序列化方法,利用未初始化变量的透明度(编译器中的常见未定义行为?)进行“高效”反序列化. 分配存储器并分配预定值.然后使用Placement new来实例化一个结构(例如一个复杂的就地数据结构),将未初始化的变量“初始化”为底层内存的值. (见下面的代码) 除了

  • 使用带有C malloc的C构造函数的new2019-07-27 13:07:18

    你能安全地在C类的构造函数中使用malloc并使用new来创建该对象的实例吗?我知道在正常情况下将两者串联使用是不安全的,但在这种情况下是否可行/安全?解决方法:>是的,你可以,但你应该有充分的理由. new运算符调用构造函数,它在很多方面就像常规类方法一样.您还应该将free()部分添加到

  • c – 如何在没有删除运算符的情况下为堆对象调用析构函数?2019-07-27 01:05:05

    有人可以在这里解释当没有调用相应的delete时,如何通过new运算符为在堆中创建的对象调用析构函数. 另外,因为在下面的代码中我们通过const引用捕获对象,而在析构函数中我们正在改变对象值(即设置n = 0),那么这怎么可能. class A { private: int n; public:

  • .net – 是否在托管堆上分配了Int32 ^ i = gcnew Int32()?2019-07-26 23:04:58

    基本上我想知道它们之间的区别     Int32 ^ i = gcnew Int32();和   Int32 * i2 = new Int32(); 我写了以下代码: #include <stdio.h> #using <mscorlib.dll> using namespace System; int main(void) { Int32^ i = gcnew Int32(); Int32* i2 = new Int32();

  • c – 多个线程中的“new”运算符导致Segmentation Fault2019-07-26 17:52:53

    这与我一直在讨论的问题here和here有关,但是由于我的调查使我远离STL作为潜在问题,并且作为我的nemisis朝向“新”,我认为最好开始一个新线程. 重申一下,我使用的是嵌入式平台供应商提供的arm-linux交叉编译器(版本2.95.2). 当我在Linux PC上运行下面的应用程序时,它当然永远不会失

  • c – 对new的返回值的编译器行为2019-07-26 02:05:38

    #include <iostream> using namespace std; int main(void){ int size = -2; int* p = new int[size]; cout<<p<<endl; return 0; } 以上代码在visual studio 2010上编译没有任何问题. 但 #include <iostream> using namespace std; int main(

  • java new运算符和hashcode()2019-07-26 00:03:55

    首先,我在这里谈论默认的hashCode()方法而不是覆盖的东西. 当我们创建一个新对象时,’new’运算符返回它创建的对象的内存地址;在java中我们说它更普遍地返回引用.我想知道的是,这是否与hashCode()返回的值相同? 我相信他们是一样的.但话说回来,当我们有超过2 ^ 32个对象并且给定has

  • 关于自定义对象的C中的构造函数/析构函数和new / delete运算符2019-07-24 09:07:22

    假设我有自己创建的链接列表.它有自己的析构函数,可以释放内存.此链接列表不会超载新的或删除. 现在,我正在尝试创建一个所述链表的数组(如果我理解正确,则打开哈希).然后我在这个open anhing类的构造函数中分配必要的内存.在构造函数中调用的新运算符足以正确地为数组分配内存,对

  • c – 这些用法有什么区别:new SubElement()和SubElement()?2019-07-24 01:16:27

    在类构造函数中,我需要动态创建一些对象并将它们添加到向量中.这是我的代码: ContainerClass::ContainerClass() { for (int i = 0; i < limit; i++) elements.push_back(SubElement()); } 这与新的SubElement()是一回事吗?我还需要将这些SubElement()对象释放到Container

  • 理解c中的模板类 – new-operator的问题2019-07-24 00:16:17

    亲爱的,我现在已经坚持这个问题几天了,我的搜索没有成功. 我想做什么: 我想要一个模板阅读器类(VariableReader)来处理不同类型的变量(通常是unsigned int和指向vector的指针). 我开始了 #ifndef READER_H_ #define READER_H_ #include <string> namespace BAT { template <typena

  • c – 向量是否必须存储两次大小?2019-07-23 15:15:08

    这是一个相当学术性的问题,我意识到它在优化方面很少,但它只是出于兴趣. 据我所知,当你调用new [size]时,会分配额外的空间来存储分配的数组的大小.调用delete []时就是这样,知道可以释放多少空间. 我所做的是写了我认为矢量大致可以实现的方式: #include <cstddef> template <cla

  • c – 如何在堆栈上完成新的放置2019-07-23 13:14:20

    请考虑以下代码: char mem[sizeof(char)]; void* p = mem; f = new(p) char; 由于变量mem的内存应该在堆栈上 那么,为什么这块内存最终不能自动收集.解决方法:内存IS自动收集. 但是不会自动调用析构函数.当您使用placement new时,您应该将其与手动析构函数调用配对.对于char来说,

  • Javascript新关键字用法2019-07-23 11:34:03

    使用或不使用new关键字调用javascript函数之间有区别吗?例如,如果我有这个功能: function computer(){ this.hardDrive = "big"; this.processor = "fast"; } 然后我以两种不同的方式称呼它: var hp = computer(); var hp = new computer(); 什么是两个函数调用之间的区别?解决

  • c中的新运算符2019-07-23 06:08:42

    我正在阅读“思考在c”的第13章. 以下内容来自本书. MyType *fp = new MyType(1, 2); at runtime, the equivalent of malloc(sizeof(MyType)) is called, and the constructor for MyType is called with the resulting address as the this pointer, using (1, 2) as th

  • 是否可以使用new运算符初始化C 11中的数组2019-07-23 05:05:23

    大家好我想在C中初始化一个数组 int array [10] = {1,2,3,4,5,6,7,8,9,10}; 但我正在使用新的操作符. 我知道我可以像下面那样做,然后迭代并分配值 的shared_ptr&LT INT [] GT; l(new int [7]); 但我真的很喜欢,如果有一些方法可以在新命令中初始化它 像这样的东西shared_ptr< int

  • c – Linux上的operator new和bad_alloc2019-07-17 04:51:02

    在Linux上,如果内存不足,malloc不一定返回空指针.你可能会找回一个指针然后让OOM杀手开始吃进程,如果你真的没有记忆. c的运算符new也是如此,或者你会得到bad_alloc异常吗?解决方法:对于新的操作符来说也是如此,唉:^(

  • c# – WPF XAML TextBlock将内容发送到新行2019-07-13 15:15:49

    我有一个TextBlock,就像这样: <ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto"> <TextBlock Name="PatchNotesTxt" Width="291" Height="226" Style="{StaticReso

  • 帮助java中的静态变量2019-07-13 02:12:38

    我有一节课, class MyClass { private int val; public static final MyClass myObject = new MyClass(1); MyClass(int a){ val = a; } public int getVal(){ return val; } public MyClass func1(){ MyClass temp = myObje

  • Python多重继承:__new__要调用哪些?2019-06-27 03:43:10

    我有一个班级家长.我想为Parent定义一个__new__,因此它在实例化时会有一些魔力(为什么,请参阅脚注).我也希望子类继承这个和其他类来获得Parent的功能. Parent的__new__将返回子类的base和Parent类的子类的实例. 这是如何定义子类: class Child(Parent, list): pass 但现在我

  • c – 重载new运算符以在mmap’d文件中存储对象2019-06-26 20:38:51

    我有一个Linux C程序具有相当大的内存要求.大多数内存仅由几个类消耗,并且很少被访问.我想将这些类从主内存移动到基于磁盘的存储,同时尽可能少地改变现有代码. 我们的想法是覆盖这些对象的new运算符,并将它们分配到mmap()的内存区域.这样我的代码修改仍然非常有限,程序的其余部分

  • 如果是isset,PHP会创建一个新对象还是使用现有对象?2019-06-26 12:26:39

    很多次我发现这是多余的: $found = $repo->findOneByCode($code); $zone = isset($found) ? $found : new Zone(); 任何人都可以建议更好的方式,类似于(不工作): $zone = $repo->findOneByCode($code) || new Zone(); 编辑:我无法修改Zone和findOneByCode,因为它们是由Doctrine OR

  • 类如何在Java中实例化?2019-06-24 01:47:59

    我在JLS8/15.9.1中遇到了以下规则: The Identifier after the new token must unambiguously denote an inner class that is accessible, non-abstract, not an enum type, and a member of the compile-time type of the Primary expression or the ExpressionName. 我无法

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有