LINUX.ORG.RU

[c++] не получается вызвать функцию-шаблон


0

0

Код, описывающий мои пожелания:
template <class X>
struct base {
    template <class Y>
    void foo()
    {
    }
};

template <class Z>
struct derived : public base<Z> {
    void bar()
    {
        this->foo<int>();
    }
};

int main()
{
}

Этот код не компилируется:
test.cpp: In member function ‘void derived<Z>::bar()’:
test.cpp:14: error: expected primary-expression before ‘int’
test.cpp:14: error: expected `;' before ‘int’

Как сделать так, что бы компилировался, не пойму? :)

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.