initializer_list::value_type. Co jest nie tak.

0

Cześć :)

auto list = {1,2,3};
typename list::value_type a;

Powoduje błąd kompilatora, ale nie rozumiem dlaczego skoro value_type jest zdefiniowany następująco w initializer_list<>:

template<typename _Tp, typename _Alloc = std::allocator<_Tp> >
    class list : protected _List_base<_Tp, _Alloc>
    {
....
    public:
      typedef _Tp                                        value_type;
 ....

Proszę mi wyjaśnić co nie tak rozumiem.

Błąd:

‘list’ is not a class, namespace, or enumeration
     typename list::value_type  a 
2

list jest nazwą zmiennej, nie typu. spróbuj typedef decltype(list)::value_type a;

0

dzięki.
Nie wiem dlaczego doznałem takiego zmieszania :/

1 użytkowników online, w tym zalogowanych: 0, gości: 1