【发布时间】:2018-07-23 00:22:19
【问题描述】:
它有什么优点,还是它的坏主意?为什么不好?
std::vector<object> * vec;
我发现了类似的问题,但它没有解释我们为什么要使用/不使用它,这就是我问的原因。
C++ Any benifits using pointer to vector of pointers?
我知道有的唯一原因:
指针可能为空
std::vector<object> * vec == nullptr;
if (vec == nullptr) vec = new std::vector<object>(size);
大小为 8
堆栈上的指针是 8,而向量在堆栈上有 3 个指针,所以 24
还有其他原因吗?
【问题讨论】:
-
答案应该和这个stackoverflow.com/questions/22146094/…一样,我想不出有什么不同的原因
vector -
具体是什么情况?
-
使用这种东西可能是有原因的——在非常特殊的情况下使用几乎任何类型通常都是有原因的。不过,您不想积极寻找这些情况。当您遇到它们时,您会认识它们。我不能说我曾经在我自己的任何代码中使用过指向向量的指针。