提问人:Sreeraj Chundayil 提问时间:8/2/2021 更新时间:8/16/2021 访问量:106
我可以在不同的重定向上混合使用 new 和 malloc 吗?
Can I mix new and malloc on different redirection?
问:
这种行为是未定义的,我混合了两者?new
malloc
int main()
{
int ***arr = new int**[1];
arr[0] = static_cast<int**>(malloc(sizeof(int**)));
arr[0][0] = new int;
arr[0][0][0] = 1;
//now, release memory using appropriate operator
}
答:
4赞
Aykhan Hagverdili
8/2/2021
#1
是的,你可以这样做。您必须致电 ,并相应地稍后调用。小心不要释放你从等那里得到的东西。delete[]
delete
free
malloc
delete
1赞
eerorika
8/2/2021
#2
这种行为是不确定的,我混合了新的和恶意的?
示例中没有 UB。
你可以这样做,但没有好处。
评论
new
malloc