【发布时间】:2012-07-24 00:39:42
【问题描述】:
我有一个指向机器的指针向量: 也就是说,
vector<Machines*> m;
我用指针填充向量,我知道存在的机器数量。 如果我创建了一个指向 Machines 指针的指针,指向向量的开头:
Machines** m2;
m2 = & m[0];
我是否会在增加“0”时访问向量成员?
m2[0]->dostuff;
m2[1]->dostuff;
...
这对我来说似乎可行,但我不确定这是否允许。 :)
提前谢谢你!
【问题讨论】:
-
这当然是合法的,但是当你已经有一个向量时似乎有点奇怪 - 附带问题:为什么是指针向量?为什么不只是机器的向量?
-
@John3136 可能 Machine 是一个基类,在这种情况下,您需要指针来防止切片。
标签: c++ pointers stl vector std