Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
C++删除动态数组的最后一个元素
在 C 中 我采用了一个包含 n 个元素的动态数组 int a new int n 左移该数组的所有元素后 最后一个元素 即 a n 1 是无用的 我想删除它 右移后 我需要删除数组的第一个元素 并有一个指向第二个元素的指针 即我需要创建一
c
Dynamic
dynamicmemoryallocation
deleteoperator
删除[]对象数组
我已经分配了对象数组 Objects array new Objects N 我应该如何删除这个数组 只是 delete array 或者迭代数组的元素 for int i 0 i
c
Arrays
newoperator
deleteoperator
C++ 操作符删除失败,如果不能,为什么?
在内存解除分配期间 操作符删除是否可以抛出异常或以其他方式发出错误信号 以其他方式是否有可能operator delete失败 在这种情况下它的默认行为是什么 ISO 标准对此有何规定 例如在 Windows 操作系统中 C operato
c
WINAPI
iso
deleteoperator
C++中为什么有delete[]?
为什么有一个delete 根据我的理解 数组的行为有所不同 然而 为什么它真的存在呢 C中只有free 没有free array 同样在语法上 两者之间的唯一区别delete var and delete var is the 它没有参数
c
deleteoperator
删除所有构造函数(或其他函数)的最佳样式?
假设我想创建一个无法构造的类型 不要问为什么 struct Impossible 我可以这样做 Impossible delete disable automatically generated constructors don t dec
c
C11
memorymanagement
deleteoperator
对重载new和delete施加限制
是否可以对重载运算符 new 和 delete 施加一些限制 我的重载 new 在另一个文件中链接到我的测试程序 场景是 if condition is satisfied call overloaded new else call the
c
overloading
newoperator
deleteoperator
在 C++ 的动态内存分配(堆)中,“删除”运算符实际上是如何在幕后工作的?
我不明白 删除 运算符在 C 中是如何在幕后实际实现的 例如 class Node int i Node left right int main Node a new Node somehow the object a is initial
c
C11
heapmemory
deleteoperator
复制/移动省略与显式删除的复制/移动构造函数
我想知道复制 移动省略何时适用 或允许适用 显式deleted 复制 移动构造函数和非deleted 复制 移动构造函数 具体如下 可以明确地deleted 复制 ctor 或移动 ctor 被删除 是否尝试从另一个相同类型的对象或临时对象
c
constructor
movesemantics
deleteoperator
copyelision
为什么C++流类中添加了operator void*()转换函数?
有转换功能operator void const在 C 流类中 这样所有的流对象都可以隐式转换为void 在与 SO 程序员的互动中 他们建议我不要使用void 除非你有充分的理由使用它 void 是一种消除类型安全和错误检查的技术 因此
c
C11
deleteoperator
voidpointers
cstandardlibrary
除了调用全局删除运算符之外,删除 void 指针还能做什么?
C 标准非常清楚明确地指出使用delete or delete on a void 指针是未定义的行为 如中引用的这个答案 https stackoverflow com a 941959 1858225 这意味着不能使用类型的指针删除对象
c
undefinedbehavior
deleteoperator
voidpointers
由于删除运算符会释放内存,为什么需要析构函数?
来自 C 常见问题解答 http www parashift com c faq lite dtors html faq 11 9 http www parashift com c faq lite dtors html faq 11 9
c
destructor
deleteoperator
为什么 C++ 运算符 new/delete/variants 不应该出现在头文件中?
有人可以解释这个 C 编译错误的本质吗 我正在涉足 学习如何重载全局运算符 new delete 及其变体 我读了一篇couple https stackoverflow com questions 13635157 c overload
c
gcc
deleteoperator
translationunit
C++ new、delete 和函数
这对我来说有点不清楚 所以 如果我有一个函数 char test int ran char ret new char ran process return ret 然后多次调用它 for int i 0 i lt 100000000 i c
c
newoperator
deleteoperator
C++中删除指针
背景 我正在努力理解指针 几周前我们在学校才看到它们 今天练习时我遇到了一个愚蠢的 问题 这对你来说可能非常简单 但我几乎没有编程经验 我在 SO 中看到了很多关于删除指针的问题 但它们似乎都与删除类而不是 简单 指针 或任何正确的术语 有
c
pointers
deleteoperator
queue::push 后双重释放或损坏
include
c
RuntimeError
deleteoperator
删除 NULL 指针安全吗?
删除 NULL 指针安全吗 这是一种好的编码风格吗 delete无论如何都会执行检查 因此在您这边检查会增加开销并且看起来更难看 Avery好的做法是在之后将指针设置为 NULLdelete 有助于避免双重删除和其他类似的内存损坏问题 我也
c
pointers
memorymanagement
NullPointer
deleteoperator
std::unique_ptr 的自定义删除器如何工作?
根据 N3290 std unique ptr在其构造函数中接受删除器参数 但是 我无法使其与 Windows 中的 Visual C 10 0 或 MinGW g 4 4 1 一起使用 也无法与 Ubuntu 中的 g 4 6 1 一起使
c
C11
uniqueptr
deleteoperator
指向子类的指针上的删除是否会调用基类析构函数?
我有一个class A它对其字段之一使用堆内存分配 类 A 被实例化并作为指针字段存储在另一个类中 class B 当我完成 B 类的对象后 我调用delete 我认为它调用了析构函数 但这也调用了 A 类的析构函数吗 Edit 从答案中
c
memorymanagement
destructor
deleteoperator
baseclass
如何安全删除多个指针
我有一些代码使用了很多指向同一地址的指针 给出一个等效的简单示例 int p new int 1 int q p int r q delete r r NULL ok delete q q NULL NOT ok delete p p NU
c
pointers
memory
deleteoperator
如何对两个指针指向的变量使用delete?
假设我有一个假设的指针声明为new像这样 int hypothetical pointer new int 并创建另一个具有相同值的假设指针 int another hypothetical pointer hypothetical poi
c
pointers
newoperator
deleteoperator
«
1
2
3
»