Oh, sorry. Assume "cadillac" have "A4" model, "bmw" have "A4" model too. now, if I will querying "A4" 's price, I must kown the manufacturer. ordered_no_unique< tag<model>,BOOST_MULTI_INDEX_MEMBER(car_model,std::string,model) >,ct.insert(car_model("A4",cadillac,78901));ct.insert(car_model("A4",bmw,65412)); index_iterator<car_table,model>::type im0,im1; boost::tuples::tie(im0,im1)=get<model>(ct).equal_range(model);car_table_manufacturer_view ctmv;copy(im0,im1,back_inserter(ctmv));car_table_manufacturer_view::iterator ictmv = ctmv.find(cm); ctmv.modify(cctmv, _Modify_price(10000)); // right or wrong??? ------------------ 原始邮件 ------------------ 发件人: "Joaquin M Lopez Munoz"<joaquin@tid.es>; 发送时间: 2010年7月25日(星期天) 晚上7:17 收件人: "boost-users"<boost-users@lists.boost.org>; 主题: Re: [Boost-users]¤Multi_indexcomposite_key~~ isjk <isjk <at> foxmail.com> writes:
thanks a lot!
now, I have a new problem:
Multi_index example 6: complex searches and forergn keys, struct car_manufacturer { std::string name; };
struct car_model { std::string model; car_manufacturer* manufacturer; int price; };
I want use "model, name" to query "price", and I maybe to modify "price".
How to do it? thanks.
Sorry but your question is not clear to me: what do you mean by querying "price" using "model, name"? If you know the model of a car then you just can use find() in the car_table to locate the element and access the price. As for modifying, there's a tutorial section on updating elements of a multi_index_container at http://www.boost.org/libs/multi_index/doc/tutorial/basics.html#ord_updating Joaquín M López Muoz Telefónica, Investigación y Desarrollo _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users