0

成分のベクトルをリストしようとしています。

クラス Ingredient には、2 つのメンバーと 2 つのメンバー関数しかありません (コンストラクターを除く)。名前とカテゴリを保持し、名前を返す関数「getName」とカテゴリを返す「getCategory」があります。これらの成分はベクター(キャビネット)に保存されます。

キャビネットの内容をリストする必要があるコードは次のとおりです。

for(int i = 0; i < cabinet.size(); i++)
{
   cout << cabinet[i].getName();
   switch(cabinet[i].getCategory())
   {
      case 1: cout << "Alcohol" << endl;
              break;
      case 2: cout << "Liqueur" << endl;
              break;
      case 3: cout << "Brew" << endl;
              break;
      case 4: cout << "Non alcohol" << endl;
              break;
      case 5: cout << "Wine" << endl;
              break;
   }
}

私が得るもの:

[first ingredient][second ingredient][thrid ingredient]...etc

では、なぜ私の switch-statement が機能しないのですか?

4

1 に答える 1

0

助けてくれてありがとう!追加しようdefault: cout << cabinet[i].getCategory();としたところ、誤って char として保存していたことがわかりました。追加機能を修正し、機能するようになりました。助けてくれてありがとう!

于 2012-09-01T16:56:56.710 に答える