【发布时间】:2011-04-13 11:51:11
【问题描述】:
我想做一个程序,让我们说代表一个矩阵 现在矩阵将由一个向量表示,向量中的每个对象都将 表示一个单元格示例:向量 现在在构造矩阵时,构造函数接收要插入矩阵的单元列表。 编译时列表大小未知
我有兴趣在不使用堆内存的情况下创建这个矩阵。换句话说,不使用“new”或“delete”这个词创建对象 如果我不知道要在向量中插入多少对象,有什么办法吗?
【问题讨论】:
-
为什么你反对在堆上分配这个对象?这就是堆的用途(嗯,至少是主要的事情之一)。
-
为什么你认为避免堆是个好主意?如果矩阵非常大且非稀疏,因此无法放入堆栈怎么办?
-
除非您有非常具体的理由避免使用
new,否则这听起来很糟糕。 -
@kevin:那么,您是否尝试使用
std::vector?那会更有意义。 -
std::vector 可能实际上并没有避免任何堆使用,但至少您不需要自己管理它。
标签: c++ object new-operator delete-operator