我刚开始,但我已经遇到了麻烦。到目前为止,我的代码很简单:
(在Searcher.h中)
#ifndef SEARCHER_H
#define SEARCHER_H
#include <string>
#include <list>
using namespace std;
class Searcher{
public:
Searcher( int& x );
~Searcher();
private:
int size;
list<string> * lists;
};
#endif
(在Searcher.cpp中)
#include "Searcher.h"
Searcher::Searcher (int& x){
lists = new list<string>[x];
}
(在testSearcher.cpp中)
#include "Searcher.h"
#include <iostream>
using namespace std;
int main (){
Searcher * x = new Searcher(211);
}
它编译,但是当我运行它时,它会产生一个浮点异常。我甚至用211代替x无济于事。预先感谢您的任何帮助。另外,对于业余调试它,我在初始化之前在构造函数中放了一个cout语句并打印好了,然后g ++给了我浮点异常。
答案 0 :(得分:0)
尝试将参数设置为Searcher“const int&amp; x”。
答案 1 :(得分:0)
不应该是:
Searcher::Searcher (int& x) {
lists = new list<string>(x);
}
我从未见过您使用[x]发布的语法。