如何将此头文件转换为指针类型

时间:2013-12-07 09:14:41

标签: c++ pointers

这是我的头文件Vector.h我以这种方式构建它,但是讲师说你必须用指针做。如果我输入一些值,程序将崩溃,所以我必须使用指针它应该是* vector而不是数组。我需要你的帮助。

#include <string>
class Vector
{
public:
explicit Vector();
explicit Vector(int);
explicit Vector(int,int);
int getSize();
int getIncrementSize();
void add(int);
friend std::ostream& operator<< (std::ostream& , const Vector& );
//Vector operator<<(Vector);
Vector operator+(Vector);
int operator[](int);
int getElementAt(int);
void setElementAt(int,int);
void insertElementAt(int,int);
void removeElementAt(int);
void removeElement(int);
private:
int initialSize;
int vector[1000];   
int incrementSize;
int realincrementSize;
int x;
};

3 个答案:

答案 0 :(得分:0)

他可能意味着行int vector[1000];,如果你想创建一个数组,你还必须手动重新分配内存,以便能够添加超过1000个元素。

所以用std::vector myVector;

之类替换这一行

答案 1 :(得分:0)

听起来我应该创建一个dynamic array

在这种情况下,您的第int vector[1000];行应为int *vector;。点击链接,然后在实际尝试使用它时询问具体问题。

答案 2 :(得分:0)

而不是

  

int vector[1000];

你可以将'vector`声明为

  

int* vector;

现在要为vector分配一些内存,请执行

  

vector = (int*) malloc( 1000 * sizeof(int) ) ;

当您不再需要free( vector ) ;时,请不要忘记vector