To pytanie może być dobrze odpowiedział jeden ale niestety nie wiem prawidłową terminologię, żeby go zapytać prawidłowo, więc ...C++ szablonu argument, który już jest „znany”
template <class _Cp, bool _IsConst, typename _Cp::__storage_type = 0> class __bit_iterator;
Może ktoś wyjaśnić ostatni argument szablonu? Jedyną rzeczą, którą mogę wywnioskować, jest to, że jeśli parametr określony dla _Cp ma typ podrzędny __storage_type, wówczas wszelkie użycie _Cp :: __ storage_type w szablonie rozwiąże ten problem. Jeśli tak nie jest, oznacza to, że _Cp :: __ storage_type ma wartość 0? Wydaje mi się to bardzo perwersyjne (lub raczej błędne po odrobinie eksperymentów).
Objaśnienie dotyczy poprawnej terminologii i referencji w C++.
Dla zainteresowania, ten kod został pobrany z biblioteki libC++.
Tylko dla rekordu: to wygląda jak kod biblioteki, nie używaj nazw zaczynających się od '_X' dla wielkich liter" X "lub mających podwójne podkreślenia w nazwie' __', ponieważ są one zarezerwowane. - całkowicie niezwiązane z twoim pytaniem :) –
@ DavidRodríguez-dribeas Powiedział, że ten kod jest częścią 'libC++'. –
@MateuszGrzejek: I Dawid powiedział "zupełnie niezwiązany z twoim pytaniem". Zostawia notę doradczą. –