Получаю “no matching function” от GCC
От: gcooler  
Дата: 01.01.13 15:45
Оценка:
Почему не работает этот простой код?


template<class U>
class retype 
{ 
    typedef U type; 
};

class object
{
public:
    template<class U>
    int create(typename retype<U>::type p)
    {
        return 4;
    }
};

int main()
{
    int n = object().create(5);

    return 0;
}


Получаю такую ошибку при компиляции GCC:


test.cpp: In function ‘int main()’:
test.cpp:20: error: no matching function for call to ‘object::create(int)’


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