腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
4
回答
不使用新
的
C++
内存
分配
错误
、
我对我
的
程序抛出大量
内存
分配
异常有问题,我很难诊断这个问题.我会发布代码,但是我
的
程序很大,而且我有专有信息,所以我希望在不发布代码
的
情况下得到一些帮助。大型数据集在我
的
18个模块
中
的
17个模块
中
运行得很好--我已经隔离了一个发生错误
的
函数
。我
的
具体问题如下: 如果我没有使用“新建”和“删除”,而且我
的
所有变量都是在本地
函数
内部初始化
浏览 4
提问于2013-07-30
得票数 5
回答已采纳
1
回答
在C++中使用新关键字/运算符
以下声明
的
结果是什么?new (&p)
std
::
string
("New word");p = new
std
::
string
("New word");
浏览 1
提问于2017-06-23
得票数 0
回答已采纳
6
回答
在堆栈上
分配
内存
而不调用
构造
函数
我希望在下面的代码中将MyClass保存在堆栈
内存
中
(更简单、更快),但避免调用默认
构造
函数
:public:
std
::cout << "MyClass()" <<
std
::endl;
std
::cout << "MyClas
浏览 9
提问于2013-08-20
得票数 9
回答已采纳
1
回答
深拷贝与浅拷贝行为
、
、
、
示例程序1(将显式复制
构造
函数
和
内存
分配
给
堆
中
的
成员变量,由
构造
函数
调用)--这将创建深度复制。objP.setParam(30,40); objP.printParam(); } 示例程序2(没有显式复制
构造
函数
和
内存
分配
给
堆
中</e
浏览 8
提问于2022-10-11
得票数 -2
1
回答
线程安全堆栈实现
、
、
"C++并发操作第二版“有一个线程安全堆栈实现
的
示例,下面是pop
的
代码
std
::shared_ptr<T> threadsafe_stack<T>::pop()
std
::lock_guard<
std
::mutex> lock(m);
浏览 2
提问于2022-09-22
得票数 0
回答已采纳
10
回答
将new[]与delete配对怎么可能只导致
内存
泄漏?
、
、
首先,根据C++标准,对任何使用new[]
分配
的
对象使用delete都是未定义
的
行为。 在Visual C++ 7
中
,这样
的
配对可能会导致两种后果之一。如果类型new[]'ed有简单
的
构造
函数
和析构
函数
,VC++只是使用new而不是new[],并且使用delete可以很好地处理该块- new只调用“
分配
内存
”,delete只调用“释放
内存
”。如果类型new[]'
浏览 0
提问于2009-12-16
得票数 28
回答已采纳
3
回答
C++传递
std
::
string
通过引用dll
中
的
函数
、
、
、
、
在通过引用传递
std
::
string
以在dll
中
运行时,我遇到了问题。这是
函数
调用:我试着一步一步地调试调用
函数
,并查看
函数
中
浏览 4
提问于2014-03-09
得票数 9
回答已采纳
4
回答
我应该声明异常
的
副本
构造
函数
吗?
、
、
、
、
在更有效
的
C++
中
,Scott说 C++指定复制作为异常抛出
的
对象。那么,如果复制
构造
函数
依次抛出一个异常,则调用
std
::terminate,因此这是声明所有异常
的
副本
构造
函数
noexcept
的
一个很好
的
理由(而且,我猜,也不会抛出从
堆
中
分配
内存
的
对象,比如
std
::
string
)。然而,
浏览 6
提问于2014-02-08
得票数 13
回答已采纳
4
回答
如何在构建时为
std
::向量保留
内存
?
、
通常,在
构造
reserve之后,我会立即在
std
::vector上调用它。这不是通常会导致
std
::vector
的
现有
堆
分配
被销毁并替换为一个新
的
堆
分配
吗?是否有一种方法可以在构建时保留
内存
,而不是
分配
堆
空间,然后立即销毁它?还是在
std
::vector中有一个实现技巧来确保这不是一个问题?可用
的
构造
函数
似乎只
浏览 5
提问于2015-08-07
得票数 29
回答已采纳
1
回答
将
std
::对字符串放置到无序映射中,重用字符串
的
堆
、
我有一个无序
的
字符串对映射,我通过消息id (key)引用它。现在,我希望使用
函数
接收
的
临时字符串对象来
构造
位置上
的
字符串对,从而重用为堆上
的
字符串
分配
的
内存
。但我很难把头绕在这个建筑上。以下是我想出
的
:
std
::unordered_map<int,
std
::pair<
std
::
string
,
std
::
浏览 7
提问于2022-02-18
得票数 1
回答已采纳
1
回答
std
::向量
函数
push_back
中
的
奇异段故障
、
、
当我将_Tp类型
的
对象推回
std
::vector
中
时,会出现一个段错误信号SIGSEGV,其中template new_allocator<_Tp>在以下片段
的
末尾返回: allocate我可以看出,
内存
显然是足够
的
,所有的寄存器都很好。尽管如此,关于_Tp
的
一个事实是,它确实是一个没有默认
构造
函数
的
类实现,因为它有一些引用类型
的
成员字段,默认情况下不能
构
浏览 8
提问于2014-01-16
得票数 3
回答已采纳
3
回答
在
构造
函数
中
动态
分配
新对象
、
、
因此,考虑到这个简单
的
场景:public: n = new int(10); ~A(){ }}; A* a = new A();这会不会导致
堆
损坏
(一般
的
问题),因为在我进行新
的
分配
时,一个指针还没有完成
分配
?如果是这样的话,在
堆
构造
<em
浏览 0
提问于2013-01-23
得票数 2
回答已采纳
3
回答
为什么不允许
std
::initializer_list同时指定大小和堆栈
分配
?
、
、
、
、
我从了解到,
std
::initializer_list不需要
分配
堆
内存
。但是对于
std
::initializer_list,这个规则显然不适用,因为
内存
布局(虽然可以从传递给其
构造
函数
的
参数派生)不需要考虑接收
函数
或
构造
函数
。只有当类型
堆
分配
内存
并只保留存储以管理该
内存
时,这才对我有意义。然后,区别将非常类似于
浏览 11
提问于2022-05-25
得票数 18
回答已采纳
2
回答
这个
函数
会在C++中产生
内存
泄漏吗?
、
下面的
函数
make_map是否构成了C++
中
的
内存
泄漏?
std
::map<
std
::
string
,
std
::
string
> make_map() { return *new
std
::map<
std
::
string
,
std
::
string
> {我
的
推理是,每次调用make_map时,都会发生以
浏览 0
提问于2019-12-02
得票数 1
回答已采纳
3
回答
c++为什么在将字符串文字传递给
函数
时
分配
内存
?
、
、
我有他
的
密码: // here I don't even touch 'name'if(components == 2) return 3;}setAttrib("position", 3); 我正在使用xcode分析器分析
内存
,并在
函数
调用
浏览 3
提问于2011-05-30
得票数 5
回答已采纳
2
回答
是否可以将
std
::数组移动到
std
::载体
中
?
、
、
、
、
这是一个关于堆栈
内存
和
堆
内存
之间
的
交互
的
问题,以及通过
std
::array和
std
::vector类从堆栈到
堆
的
特殊情况。是否有可能让
std
::vector<T>
构造
函数
考虑到这一事实,并试图通过复制指针将array
的
内容移动到vector
中
。很明显,即使编写了
std
::vector
的
move<em
浏览 2
提问于2015-12-01
得票数 8
回答已采纳
4
回答
cstring -> c++字符串转换
、
、
如果我有一个
函数
{} 我把它称为x("abc"),字符串
构造
函数
会
分配
内存
并复制其中
的
数据吗?
浏览 2
提问于2012-05-15
得票数 0
回答已采纳
1
回答
我在类中使用malloc或new来获取变量,然后得到一个SIGABRT
我在类中使用malloc或new来获取变量,然后我得到一个SIGABRT,我在其他cpp文件
中
测试malloc和new,它工作得很好。你能告诉我原因吗:P错误出现在两行:(在
函数
Trie::Insert(char*)
中
)其他人是正确
的
#define CHARSIZE 26#include<stdlib.h> #
浏览 3
提问于2012-11-21
得票数 0
回答已采纳
2
回答
在
构造
函数
中
初始化流
我正在创建一个解析CSV数据
的
类,我希望用filepath或流初始化这个类。如果文件路径被传递,那么_str_in应该被设置为一个新打开
的
ifstream。下面的代码编译了第二个
构造
函数
,但是给出了一个警告:“引用成员被初始化为一个临时
的
,在
构造
函数
退出后不会持久”。
分配
给ifstream
的
内存
在
构造
函数
退出后释放。 _str_in现在指向未
分配
的</
浏览 8
提问于2014-12-14
得票数 2
回答已采纳
1
回答
指向存储整数
的
堆
内存
位置
的
指针
Pair有两个公共成员变量:这两个“指向int
的
指针”旨在指向存储整数
的
堆
内存
位置。Pair类
的
其余部分需要以下功能。单个
构造
函数
对( int,int):这应该将pa和pb设置为指向堆上新
分配
的
内存
位置。应该根据
构造
函数
的
整数参数a和b为这些
内存
位置
的
整数赋值。换句话说,复制
构造</e
浏览 0
提问于2021-01-20
得票数 0
点击加载更多
热门
标签
更多标签
云服务器
ICP备案
云直播
腾讯会议
实时音视频
活动推荐
运营活动
广告
关闭
领券