腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
1
回答
C++
引物第5版放置
新
c++
、
placement-new
,初始化器提供(可能是
空
的)逗号分隔的初始化程序列表,用于构造
新
分配
的对象。当
使用
地址和其他参数调用时,operator
使用
运算符
new(size_t,void*)来“
分配
”其
内存
。这是操作符new的版本,我们不允许重新定义它(第19.1.1节,第822页)。此函数不
分配
任何
内存
;它只是返回
指针
参数。然后,整个
新
表达式通过在给定地址初始化对象来完成其工作。实际上,placement
浏览 4
提问于2021-06-08
得票数 2
2
回答
如何
使用
新
运算符
C++
为
空
指针
分配
内存
?
c++
、
pointers
、
linked-list
、
dynamic-memory-allocation
、
void-pointers
next = next_ele; (*data) = (*content)}; 我必须
为
data
分配
内存
的原因是,如果我只
分配
data = content,如果*content被销毁(例如离开本地函数时),*data也会被销毁。那么
如何
在
C++
中
分配
空
类型的
内存
来解决这个问题呢?如果不能,有没有什么解决
浏览 31
提问于2019-12-13
得票数 1
回答已采纳
8
回答
C++
中的
内存
分配
c++
、
memory
、
new-operator
是否可以
使用
"new“
运算符
分配
任意
内存
块?在C中,我可以这样做:"void *p= malloc(7);“-如果
内存
对齐设置
为
1字节,这将
分配
7个字节。
如何
在
C++
中
使用
新
运算符
进行同样的操作?
浏览 4
提问于2009-07-02
得票数 8
回答已采纳
2
回答
是否可以仅通过在
C++
中存储
分配
的
指针
地址来分析
内存
?
c++
、
dynamic-memory-allocation
、
allocator
、
memory-profiling
我想要创建一个简单的
内存
分析器。它将将
运算符
new (或直接从malloc())返回的与
分配
大小相关联的地址存储在某个数据库中作为事件。然后,我只想
使用
传递给
运算符
delete (或free())的地址来跟踪取消
分配
。 在
C++
中,我确实可以确保传递给
运算符
delete (或free())的
指针
总是以前
分配
的
指针
吗?我怀疑在
C++
分配
器中是否存在某种隐藏
指
浏览 3
提问于2020-01-15
得票数 3
回答已采纳
3
回答
C++
语言中的两个问题
c++
、
pointers
我正在学习
C++
语言。有两个概念我搞不懂:有人能帮忙吗? 这个问题的最初标题和关于学习的声明说,这个问题是关于C的,而不是
C++
。但问题显然是关于
C++
的,而不是C的,因为每个问题中的两个项目之一在C中并不作为一个相关的概念存在。
浏览 1
提问于2011-04-28
得票数 1
回答已采纳
2
回答
对全局
运算符
新
返回的
指针
使用
realloc
c++
、
dynamic-memory-allocation
在realloc中没有
C++
;当然,您可以
使用
new
分配
一个
新
块,将旧块复制到
新
块,用delete释放旧块。问题是,realloc通常会比这更快--当
内存
块的大小调整
为
“就位”时,即realloc的返回值恰好与参数
指针
值相同;这也避免了
内存
从旧块复制到
新
块的情况。标准是什么--是否允许将全局new
运算符
返回的
指针
传递给realloc?(在glibc中,new和malloc都
浏览 3
提问于2015-11-11
得票数 2
2
回答
C++
'new‘
运算符
-
使用
模式?
c++
、
new-operator
我最近遇到了一个不同寻常的
使用
新
运算符
来重新初始化
C++
类的情况,代码如下:struct Test { Test() { std::cout<<"Test Ctor在这种情况下,“new”操作符似乎
使用
指向对象的
指针
作为
内存
源,而不是
分配
新
内存
,valgrind确保没有
内存
泄漏。 有人能解释一下'new‘
运
浏览 1
提问于2012-02-26
得票数 3
回答已采纳
1
回答
可以在更改
C++
中返回的
指针
后删除工作
c++
、
dynamic-memory-allocation
在
C++
中,我们
使用
新
运算符
动态
分配
内存
。我的问题是,修改返回的
指针
后,delete操作符能知道从哪里开始删除吗?
浏览 0
提问于2018-02-14
得票数 0
回答已采纳
2
回答
为什么默认
运算符
delete[]不能释放默认
运算符
新
分配
的
内存
?
c++
、
memory-management
、
language-lawyer
、
new-operator
、
delete-operator
由于未指定的开销,
使用
与
新
表达式的形式不匹配的delete-表达式进行释放是非法的。 但是,默认的operator new和operator delete并不相同。但是,根据operator delete[],只能释放operator new[]
分配
的
内存
。先决条件: ptr是
空
指针
,它的值表示以前调用(可能被替换的)
运算符
新
的或
运算符
新
的所
分配
的
内存
块的地址,该地址没有被对<em
浏览 13
提问于2022-08-21
得票数 1
回答已采纳
1
回答
引用结构
c++
、
pointers
、
struct
、
reference
、
new-operator
我从一本名为
C++
Primer Plus的书(第400页)中读到这部分。第8章-职能冒险使jolly成为对
新
结构的引用。这种方法存在一个问题:当不再需要
内存
时,YOu应该
使用
delete来释放new
分配
的
内存
。对clone()的调用隐藏了对new的调用,从而使以后忘记
使用
de
浏览 5
提问于2021-11-27
得票数 2
回答已采纳
2
回答
如果知道void*
分配
大小,
如何
将确切的
内存
大小传递给free()
c++
、
c
、
pointers
、
memory-management
据我所知,在
c++
和c中,delete
运算符
或free()函数可以从间谍数据类型中知道
分配
内存
的大小,delete可以自动调用析构函数。如果
分配
的
指针
是
使用
一种单例静态动态数组注册的,在其机制中不
使用
新
的操作符(即。(仅限malloc )在only中的
新
指针
。此数组注册void*
指针
,并从重载的new operator获取该
指针
的大小。 例如。malloc (sz
浏览 3
提问于2015-03-09
得票数 1
回答已采纳
4
回答
C:不能用类型
为
void*的rvalue初始化变量
c
、
pointers
、
variable-initialization
我有以下代码:我无法理解为什么我会收到以下错误。谢谢。
浏览 2
提问于2014-06-15
得票数 21
回答已采纳
2
回答
记住只能管理共享
内存
的原始对象
c++
、
destructor
、
default-copy-constructor
我有一个关于好的
C++
风格的问题:我想写一个" MyClass“类,它有一个或多个
指针
作为成员,并且MyClass能够为这个
指针
分配
内存
。我想
使用
隐式的给出默认复制构造函数(以及默认赋值
运算符
)来复制MyClass的一个实例,以便只复制
指针
,并且
新
对象共享初始对象
分配
的数据。我的想法是禁止复制的对象(
使用
复制构造函数或赋值操作符创建)释放
内存
(以及
为
成员
浏览 5
提问于2015-07-21
得票数 1
3
回答
零大小
分配
请求
c++
、
allocation
我一直在读
分配
函数(秒)。3.7.4.1 ),我看到了以下内容: 这还不清楚,因为我零大小,它的工作很好。你能解释一下那条规则的要点吗?
浏览 1
提问于2014-07-19
得票数 1
回答已采纳
7
回答
为什么不通过将
指针
移到vector[0]来实现
c++
std::vector::pop_front()呢?
c++
、
arrays
、
stl
、
vector
为什么不能通过简单地将矢量名称中包含的
指针
移动一个点来
为
C++
矢量实现pop_front()呢?因此,在包含数组foo的向量中,foo是指向foo[0]的
指针
,因此pop_front()会将
指针
设为foo = foo[1],而括号
运算符
将执行正常的
指针
计算。这是否与
C++
在为数组
分配
空间时,
如何
跟踪您正在
使用
的
内存
有关? 我承认,这类似于我见过的关于为什么std::vector没有
浏览 0
提问于2012-01-31
得票数 7
回答已采纳
1
回答
是什么使布局
新
调用成为对象的构造函数?
c++
、
new-operator
、
allocation
、
allocator
、
placement-new
来自
空
*
运算符
新
(std::size_t,void *p)抛出();内联void *
运算符
新
我知道
新
位置只是operator new的过载,它还调用给定
内存
地址上的构造函数。 但是,是什么使它调用构造函数呢?它只需要一个
指针
并再次返回它。拿一个
指针
然后返
浏览 4
提问于2020-07-03
得票数 0
回答已采纳
2
回答
如果我直接调用
运算符
new而没有
新
的表达式并强制转换返回
指针
类型是否安全?
c++
、
new-operator
、
delete-operator
、
new-expression
你好,我是在第19章从
C++
底漆第5版。“Operator new和delete vs new和delete expression new”: AFAIK、operator new和operator delete分别
分配
和释放
内存
,但不要在那里构造对象另一方面,new-expression调用operator new来
分配
内存
,在该
内存
地址中构造一个对象,并最终返回指向
新
分配
和初始化对象的
指针
。new,我猜后者只
分配
浏览 0
提问于2021-05-31
得票数 2
回答已采纳
6
回答
如何
检查在new []中
使用
free()的结果
c++
、
memory-management
进程正与SIGSEV崩溃,回溯显示
内存
损坏。指出,存在一些“不匹配的空闲”,即用new[]
分配
的
内存
是用free()释放的。我发现了下面的 另一个潜在的问题是,当将
指针
传递给带有
运算符
delete()的
运算符
分配
的数组时,当操作符delete()调用空闲()时(在许多实现中很常见,尽管
C++
标准并不要求),传递给free(这是因为malloc()在被
运算符
new调用时返回的前四个字节通常将用于存储数组的大小(同样,不是标准指定的,而
浏览 9
提问于2011-10-04
得票数 3
4
回答
删除
C++
中的string对象
c++
我的
C++
程序中有一个string对象,声明如下:我已经复制了一些数据到其中,并做了一些操作。现在我想从
内存
中删除str对象。我无法
使用
delete
运算符
,因为str不是
指针
。
如何
从
内存
中删除该对象以回收
分配
给它
内存
? 谢谢,Rakesh。
浏览 1
提问于2010-06-28
得票数 8
回答已采纳
3
回答
函数内部动态
分配
的
内存
泄漏
c++
、
pointers
、
memory-leaks
我正在网上学习
C++
,目前正在讨论
指针
和
内存
泄漏。void function() TestClass *p = new TestClass();看起来是这样的,但我不知道为什么
指针
"p“不被取消引用到它的堆地址
浏览 11
提问于2014-05-15
得票数 1
回答已采纳
点击加载更多
相关
资讯
如何征服传说C语言难点中的难点——指针
第33讲-动态内存管理
C+中的delete你用对了吗?
C语言编程经验
学好C语言指针须知的几个小方法
热门
标签
更多标签
云服务器
对象存储
ICP备案
云点播
腾讯会议
活动推荐
运营活动
广告
关闭
领券