-1

ボタンの数を含むcsvファイルがあります。これらの数値を読み取り、作成して FButton を呼び出したクラスの数値を設定する関数を作成したいと考えています。

最初に、ヘッダー ファイルで FButton の配列を宣言しました。

FButton buttons[10];

cpp ファイルに、ボタンの数を設定する次のコードを記述しました。

QFile f("Buttons.csv");

if (f.open(QIODevice::ReadOnly))
{
    int i=0;

    QString data;
    data = f.readAll();
    QStringList vals = data.split(';');

    while (!vals.isEmpty())
    {
        buttons[i].setNumber(vals[0].toInt());
        vals.removeAt(0);
        i++;
    }

    f.close();
 }

関数 setNumber は次のように与えられます。

void FButton::setNumber(int butNumber)
{
    number=butNumber;
}

コードをビルドすることは可能ですが、実行しようとするとエラーが発生します。

GUI.exe が機能しなくなりました。

誰かが私のコードの何が問題なのか教えてもらえますか?

4

1 に答える 1

2

buttonsCSV には、配列 (またはそれが何であれ)のサイズよりも多くの値がありませんか? または、初期化されていないオブジェクトがありbuttonsますか?

于 2012-07-09T09:14:45.940 に答える