C++ 什么时候对对象使用new,什么时候使用指针?

C++ 什么时候对对象使用new,什么时候使用指针?,c++,pointers,C++,Pointers,例如,我有一个向量,它是这样声明的: vector<Shapes> *ShapeVector; vector*ShapeVector; 如果我想拥有一个shape对象,并且能够访问不同大小的不同形状,是否需要声明“新建”或不需要声明?那么指针呢 对我来说,指针指向不同的访问地址。那么,我也需要指针吗 到目前为止,我编写了以下代码来创建我的对象,并在其中存储数组。之后,我计划将对象存储到向量本身中 int tempx[100],tempy[100]; for (

例如,我有一个向量,它是这样声明的:

    vector<Shapes> *ShapeVector;
vector*ShapeVector;
如果我想拥有一个shape对象,并且能够访问不同大小的不同形状,是否需要声明“新建”或不需要声明?那么指针呢

对我来说,指针指向不同的访问地址。那么,我也需要指针吗

到目前为止,我编写了以下代码来创建我的对象,并在其中存储数组。之后,我计划将对象存储到向量本身中

    int tempx[100],tempy[100];
  for (int i = 0; i < 4;i ++)
  {
    cout << "Enter x-coordinate of pt " << i << ":" << endl;
    cin >> tempx[i];
    cout << "Enter y-coordinate of pt " << i << ":" << endl;
    cin >> tempy[i];
Square mysquare = new Square(tempx,tempy);
inttempx[100],tempy[100];
对于(int i=0;i<4;i++)
{

cout您可以简单地使用
std::vector my_vector
,而无需指针。vector对象将分配在堆栈上,其内容在堆上。您的优势是形状对象将连续放置在内存中。

可能值得一看这些
*
应该位于
中(在
形状
之后)。此外,询问何时使用
新的
以及何时使用指针就像询问苹果是更绿还是更甜。