class apples
{
private:
double x;
double y;
double z;
public:
//some methods
};
我希望将苹果对象的指针存储在向量中。 我这样做是为了在任何文件中创建任何对象并在任何文件中使用任何对象。 我使用以下代码来确定我可以在该向量中存储的最大指针数
int _tmain(int argc, _TCHAR* argv[])
{
vector<apples *> myvector;
cout<<"max :"<<myvector.max_size();
return 0;
}
它给了我:
1073741823
现在,我的问题是:我是否真的能在向量中存储1073741823个指针,还是这是向量的内存限制(即1073741823字节)?
如果有2个向量:
vector<int> A
&
vector<double> B
A是否可以有1073741823个元素,B也可以有1073741823个元素? 我问这个问题是为了澄清以下事实: vector能够存储的最大元素数量不取决于被存储的实体类型(int或double)? (这与向量当前容量无关!) 此外,指向apples对象的指针大小是多少(不是在询问apples对象的大小!)? 谢谢。
vector<double>
会分配比vector<int>
更多的内存。 - masoud