Re[3]: ошибка could not deduce template argument ...
От: uzhas Ниоткуда  
Дата: 28.12.11 12:13
Оценка: 1 (1) +1
Здравствуйте, w40, Вы писали:


w40>вот код:

сделал минимальные изменения, которые доводят ваш код до компилябельного состояния: http://ideone.com/RtxTa
подозреваю, что ваша проблема сосредоточена здесь:
class F{
public:
  template<class T> 
  int func(T::B& a){return 0;}
};

int main()
{
  A<C>::B a;
  F f;
  int rc = f.func(a);
    
  return 0;
}


компилятор не может вывести тип T, когда в функцию func передают переменную типа T::B
такие ограничения на вывод типа при статическом полиморфизме
можно почитать виды полиморфизма здесь: http://fprog.ru/2010/issue4/roman-dushkin-existentials/
к сожалению, не могу сказать точно, какой вид полиморфизма вы пытаетесь использовать =\
можно спросить в разделе "Функциональное программирование"
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.