c++ - 用 new 定义的数组大小?

标签 c++ arrays new-operator sizeof

<分区>

是否有一个函数(可以编写)允许知道用 new 定义的数组的大小:

  int *a=new int[3];
  *a=4;
  *(a+1)=5;
  *(a+2)=6;  

谢谢!

最佳答案

没有标准的方法来获取分配给 new 的数组的大小。

数组分配的更好方法是 std::vector,它有一个 size() 成员——当它退出时它会自动清理范围。

关于c++ - 用 new 定义的数组大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16122337/

相关文章:

c++ - 为什么 Visual Studio 编译器在此示例中允许违反私有(private)继承?

c# - int num = new int();当这条线执行时会发生什么?

python - 使用 range/arange 函数作为参数索引/切片 2d numpy 数组

c++ - 如何将 my_alloc 用于 C++ 中的_all_ 新调用?

c++ - 为什么 c++ 有单独的新和删除语法?

C++ 错误 - 缺少右引号\

c++ - "Marked as override but does not override"OOP代码问题

c++ - Eigen:如何防止大对象的额外拷贝;分配给结果而不实现 RHS 上的完整矩阵

javascript - 防止初始数组排序

javascript - 导入()文件中的 Node.js 数组为空