如何在<vector>中存储<map>?</vector> </map>

时间:2013-11-30 20:55:44

标签: c++ list templates map stl

需要你的帮助。 假设我有两个类:class Categoryclass Product

这是它的实现

    class Category
    {
        private:
           string _category Name;
           vector<string> _categoryVector;
        public:
           void Add()
           {
            cout << "\n=== ADD <CATEGORY> ===" << endl;
            cout << "\nEnter <Category> Name: ";
            cin >> _categoryName;
            _categoryVector.push_back(_categoryName);
           };
    }

class Product
{
   private:
      string _productName;
      double _productPrice;
      map<string, double> _productMap;
   public:
      void Add()
      {
         cout << "\n=== ADD <PRODUCT> ===" << endl;

         cout <<"\nEnter <Product> Name: ";
         cin >> _productName;
         cout << "\nEnter <Product> Price: ";
         cin >> _productPrice;
         _productMap.insert(pair<string, double>(_productName, _productPrice));         
       };
}

void main()
{
   Category c;
   c.Add();
   c.Add();

   Product p;
   p.Add();
   p.Add();

   system("pause");
}

我想在类别中存储产品。在这个程序中做一些逻辑。

有可能这样做吗?

感谢。

1 个答案:

答案 0 :(得分:2)

我不明白你想要的程序,但是 如果您只想将map存储在vector中,请使用以下:

std::vector<std::map<std::string, double> >