こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

listに構造体を格納

似たような質問を続けてしまって申し訳ないんですが、
listに構造体を格納するサンプルプログラム:

#include <iostream>
#include <cstdlib>
#include <stdio.h>
#include <list>
#include <vector>
using namespace std;

void main()
{

struct order{
double price;
double no;
double quantity;
};

list < struct <order> > B;
list < struct <order> > ::iterator iteB;

struct order Player1={1.1,10.,0.9};

iteB=B.begin();
B.insert(iteB,Player1);

struct order Player2={1.,11.,0.9};
double limit=Player2.price;

iteB=B.begin();
if(B.size()>0){
while((*iteB).price>=limit && iteB!=B.end())iteB++;
}


}

を作ってみました。
が、コンパイルエラーになってしまいます。
list < struct <order> > B;
が怪しいと思い、いろいろ試したのですが
どうしてもコンパイルが通りません。
どのようにすればよいでしょうか?

投稿日時 - 2004-03-07 14:11:30

QNo.799238

困ってます

質問者が選んだベストアンサー

とりあえずコンパイルエラーがでないように直してみましたよ。。。
BCC32で確認しました。

#include <iostream>
#include <cstdlib>
#include <stdio.h>
#include <list>
#include <vector>
using namespace std;

struct order{
double price;
double no;
double quantity;
};

void main()
{
list < struct order > B;
list < struct order > ::iterator iteB;

struct order Player1={1.1,10.,0.9};

iteB=B.begin();
B.insert(iteB,Player1);

struct order Player2={1.,11.,0.9};
double limit=Player2.price;

iteB=B.begin();
if(B.size()>0){
while((*iteB).price>=limit && iteB!=B.end())iteB++;
}

}


コンパイルエラー時にエラー内容がでると思いますが、
その内容をみてなおすだけです。

投稿日時 - 2004-03-07 14:41:51

お礼

ありがとうございました。

投稿日時 - 2004-03-07 15:29:54

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)