C++ 传递一个整数作为构造函数的参数
我只想提示用户输入一些整数,并将其传递给构造函数 这是我的班级:C++ 传递一个整数作为构造函数的参数,c++,C++,我只想提示用户输入一些整数,并将其传递给构造函数 这是我的班级: class queen { int N; int** queens; int *BFSq; int s; int front = 0; int rear = -1; int *found; 这是我的构造函数: public: queen(){}; queen(int n) { N=n; queens = new int*[n]; for(int i = 0; i < n; ++i)
class queen {
int N;
int** queens;
int *BFSq;
int s;
int front = 0;
int rear = -1;
int *found;
这是我的构造函数:
public:
queen(){};
queen(int n)
{
N=n;
queens = new int*[n];
for(int i = 0; i < n; ++i)
queens[i] = new int[n];
for (int i=0; i<n; i++) {
for (int j=0; j<n; j++) {
queens[i][j]=0;
}
}
BFSq = new int[n];
found = new int[n];
}
我只想将ent
值作为int n
参数传递给我的构造函数,但我认为我做得不对,因为我遇到了错误
编辑:错误是“使用不同类型重新定义'ent':'queen'vs'int'”主要是,
queen(ent)
,而不是使用采用int
的构造函数创建临时queen,而是尝试使用默认构造函数创建名为ent
的queen对象。由于ent
已作为int
存在,编译器将抛出一个错误。解决方案是创建如下对象:queen q(ent)代码>有哪些错误?这些构造函数是否在类定义中?您不需要queen::queen()
和queen::queen(int n)
而需要所有的代码。例如,queen.h
。请包含更多代码,以便我们可以看到类是如何构造的。请编辑您的问题以包含这些代码,以便对其进行格式化properly@Kevin我刚刚添加了一些代码。我的问题有什么不清楚的地方吗?在queen(ent)中似乎也不起作用
不引用对象,即使是编译器也知道,当您键入该函数时,它知道它应该是一个整数,那么您遇到的错误是什么?目前我一直在使用较旧版本的g++,因此我的错误可能与您的不同。把它编辑到你的问题里,这和我的错误是一样的。请更换queen(耳鼻喉科)代码>与女王q(耳鼻喉科)
并告诉我它是否解决了问题
int main(){
int ent = 0;
cout<<"Please enter the size of your board\n";
cin>>ent;
queen(ent);
}