Форум — Development vector<A> a; vector<B> b(a); Как сделать? 0 0 Я думал что достаточно описать в классе B ( const A &a ); , но я ошибся . Подскажите как сделать? Ссылка
typedef vector<A> vector_a; typedef vector<B> vector_b; class B{ B(const vector_a &a); } cvv ★★★★★ (06.06.05 16:49:14 MSK) Показать ответы Ссылка
Ответ на: комментарий от cvv 06.06.05 16:49:14 MSK помойму надо vector_b -> vector_a, а не элемент vector_b из vector_a. в лоб: class VectorB : public std::vector<B> { public: VectorB( const vector_a& ); } или через operator= и объявляеть vector<B> b = a; lb ★ (06.06.05 19:06:33 MSK) Ссылка
Ответ на: комментарий от cvv 06.06.05 16:49:14 MSK // provided that below operator is implemented B::operator=(const A& x) ; // this operation will memberwise copy all elements // in range [ a.begin(), b.begin() ), into b, // starting from b.begin() std::copy(a.begin(),a.end(),b.begin()) ; omerm ★ (06.06.05 21:46:21 MSK) Показать ответ Ссылка
Ответ на: комментарий от omerm 06.06.05 21:46:21 MSK > std::copy(a.begin(),a.end(),b.begin()) ; За такое руки обрывать надо! RTFM std::vector::assign sergio_nsk ★ (07.06.05 08:03:56 MSK) Ссылка