相关疑难解决方法(0)

什么是realloc()的C++版本,分配新缓冲区并复制旧缓冲区中的内容?

在我们使用的C中malloc(), free(),但是在C++中你使用new, delete,但在C中我们也有realloc,它将分配新块并复制旧数据(常见的最小值),然后释放旧数据块.那么那个C++版本是什么?我当然可以写自己的,但是有内置的东西吗?

main() {
  int i; char *x = malloc(3);
  x[0] = 10;
  x[1] = 20;
  x[2] = 30;
  realloc(x, 4);
  x[3] = 40;
  for (i = 0; i < 4; i++) printf("%i\n", x[i]);
}
Run Code Online (Sandbox Code Playgroud)

c++ malloc

21
推荐指数
2
解决办法
2万
查看次数

运算符 new 和 delete 重载范围

我偶然发现了一些关于运算符 new 和 delete 的链接和重载的问题。

运算符 new/delete 的全局重载在多大程度上生效

  1. 每个翻译单元
  2. 每个链接的应用程序至少有一个目标文件重载这些运算符

动态联动呢?

这些运算符可以有多个定义吗?如果取哪一个。

c++ linker operator-overloading new-operator

3
推荐指数
1
解决办法
1482
查看次数

标签 统计

c++ ×2

linker ×1

malloc ×1

new-operator ×1

operator-overloading ×1