C ++具有全局列表数组的浮点异常

时间:2010-10-18 15:28:00

标签: c++ arrays list floating-point

我刚开始,但我已经遇到了麻烦。到目前为止,我的代码很简单:

(在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 ++给了我浮点异常。

2 个答案:

答案 0 :(得分:0)

尝试将参数设置为Searcher“const int&amp; x”。

答案 1 :(得分:0)

不应该是:

Searcher::Searcher (int& x) {
    lists = new list<string>(x);
}

我从未见过您使用[x]发布的语法。