C++ 填充动态数组C++;
我正在C++中设置一个名为fill\u array的方法,它接受C++ 填充动态数组C++;,c++,arrays,dynamic,C++,Arrays,Dynamic,我正在C++中设置一个名为fill\u array的方法,它接受a.fill\u array(1)并填充数组。有人能解释一下我为什么会出错吗 class DynamicArray{ public: int * array = malloc(sizeof (int) *n); public: DynamicArray(){ *array = new int[a+1]; cout <<" " << endl; }
a.fill\u array(1)
并填充数组。有人能解释一下我为什么会出错吗
class DynamicArray{
public:
int * array = malloc(sizeof (int) *n);
public:
DynamicArray(){
*array = new int[a+1];
cout <<" " << endl;
}
fill_array(int x){
array.fill(x);
}
int main()
{
DynamicArray a(9);
a.fill_array(1); /* fills array with consecutive #’s */
a.print_array();
}
您发布的代码包含许多编译器错误,但为了解决您所询问的问题,行
数组.fill(x)
似乎试图调用fill
成员函数,但array
不是任何此类成员函数的对象,它是指向int
的指针。请查看。顺便说一句,为什么new[]
?为什么不std::vector
?我想这是作业的要求,但你应该说明这一点。什么是n
?请提供一份报告。
request for member ‘fill’ in ‘((DynamicArray*)this)->DynamicArray::array’, which is of non-class type ‘int*’"