Re: Вывод аргументов шаблоной функции
От: Ignoramus  
Дата: 01.06.05 14:21
Оценка:
Здравствуйте, Yacha, Вы писали:

Y>Всем доброго времени суток!


Y>Хотелось бы разъеснить следующую ситуацию:


Y>
Y>template<typename T>
Y>void foo(T t)
Y>{
Y>   t = 1;
Y>}

Y>...

Y>int i = 0;
Y>int &ii = i;
Y>foo(ii);//здесь передается по значению, а хотелось бы по ссылке
Y>


Это почему ты так решил? Здесь передается по значению, а значение копируется через ссылку, но это уже детали, не имеющие к foo отношения.

Y>Я понимаю, что правильным было бы
 template<typename T> void foo(T& t) { t = 1; }
, но

Y>почему в первом случае T не может быть int& ?

Тут нет правильного или неправильного. Следует сделать так, как тебе нужно
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.