Преобразование типов для параметров функцииC++

Программы на C++. Форум разработчиков
Anonymous
Преобразование типов для параметров функции

Сообщение Anonymous »

Код: Выделить всё

class A{
};

class B{
public:
B();
B(const &A);
};

void foo(A &a){

}

int main(){
B b;
foo(b); //error: invalid initialization of reference of type ‘A&’ from expression of type ‘B’
return 0;
}
В приведенном выше коде возникла ошибка компиляции.

ошибка: неверная инициализация ссылки введите 'A&' из выражения типа 'B'

Ошибку можно устранить перегрузкой функции foo(). Однако есть ли у вас какие-либо другие предложения, как я могу решить проблему?

функция foo(A &a) не использует параметр «a» в качестве входных данных. параметр «a» — это просто результат функции foo(A &a).

спасибо.

Подробнее здесь: https://stackoverflow.com/questions/378 ... parameters

Вернуться в «C++»