On Apr 28, 5:05 pm, Rob <someidunknown1...@[EMAIL PROTECTED] > wrote: > I have these cl***** (elided methods): > > class Base > { > public: > Base(string name) {...} > > }; > > class Derived : public Base > { > public: > Derived(String name) : Base( name ) {...} > > }; > > And neither of these work: > > /*** ATTEMPT ONE **/ > void create(std::vector<Base>& arr) > { > ... > } > > int main() > { > std::vector<Derived> arr; > create( arr ); > } > > /*** ATTEMPT TWO **/ > void create(std::vector<Base*>& arr) > { > ... > } > > int main() > { > std::vector<Derived*> arr; > create( arr ); > } > Take a look at Bjarne Stroustrup's technical FAQ: http://www.research.att.com/~bs/bs_faq2.html#conversion - Anand -- [ See http://www.gotw.ca/resources/clcm.htm for info about ] [ comp.lang.c++.moderated. First time posters: Do this! ]