What will be printed out as a result of the following code execution?
#include <iostream>
#include <map>

template<class T>
void f(std::map<int, T>::value_type& v)
    std::cout << v.first << v.second << std::endl;

int main()
    std::map<int, int> m;
    m[0] = 2;

    return 0;
A compilation error will occur in the declaration of the function f. The type name depending on the template parameter must be declared with the typename keyword. Like this:
void f(typename std::map<int, T>::value_type& v)

Следи за CodeGalaxy

Мобильное приложение Beta

Get it on Google Play
Обратная Связь
Зарегистрируйся сейчас
или Подпишись на будущие тесты