c++ - 数组分配问题

标签 c++

这可能是一个非常简单的问题,但出于某种原因我不明白我在这里做错了什么。

无论如何,我得到了一个接受function(size_type m, size_type n) 的函数,我必须构建一个数组,该数组由名为int 的类中的私有(private)变量指向*值。我正在尝试创建一个 mxn 大小的整数数组,但我很难更改 m 和 n 的类型。

我试过:

*value = int[(int)m*(int)n];

以及使用 (unsigned int) 有人可以帮忙吗。

编辑:size_type 未声明为规范中的任何类型

最佳答案

你可以考虑:

value = new int[m*n];

因为您需要创建一个动态 数组。您需要记住在正确的时间删除[]

您可能会发现使用 std::vector 更容易,因为内存管理已为您处理。

关于c++ - 数组分配问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7203953/

相关文章:

c++ - 如何在 C++ 代码中要求某些概念?

c++ - 如何显式调用转换类型 ID 包含占位符说明符的转换函数

c++ - 在 C++ 中创建具有非常量长度的数组时会发生什么?

c++ - 为什么将我的打印方法与 std::cout 一起使用会导致错误?

c++ - constexpr 函数何时在编译时进行评估?

c++ - 关于对象数组中的析构函数

c++ - 使用两个模板参数创建最简单的分配器

c++ - 使用可变数量的 std::thread 的引用问题

c++ - '! image.data' 在 C++ 中是什么意思?

c++ - 为什么我不能在一个类的不同行中声明和定义一个成员变量?