C ++: Могу ли я преобразовать вектор в вектор во время вызова функции?

У меня есть существующие класс и функция, которые выглядят следующим образом:

Class base_class{
    ...
}

void Func(...,vector<base_class> &vec_b,...){
    // inside the function, the vector vec_b is being re-organized and re-sized
}

и я определил производный класс, который выглядит так:

Class derived_class: public base_class{
    ...
}

Теперь, не изменяя функцию Func , могу я передать вектор в Func , например:

void main(){
    vector <derived_class> d;
    Func(...,d,...);
}

, что производный класс d претерпевает ту же реорганизацию и изменение размера? Я знаю, что могу без проблем преобразовать производный класс в базовый класс в вызове функции, но как только вектор будет запущен, возникают трудности? Я не могу найти ответ в Интернете, поэтому будем благодарны за любые предложения или помощь. благодаря.

7
задан AlexTPF 20 February 2012 в 17:11
поделиться