Альтернативные реализации STL в C ++ 11 и выше
Со временем появились различные альтернативные реализации STL *, такие как STLPort. Некоторые крупные корпорации также используют свой собственный внутренний порт STL для различных целей.
С C ++ 03 этоМожно написать порт STL, используя только переносимые функции языка C ++, а это означает, что любой соответствующий компилятор должен иметь возможность его компилировать.
Но с C ++ 11, нетЕсть определенные особенности, которые требуюткомпилятор служба поддержки?
Например, я нене вижу, какstd::is_standard_layout
может быть реализован с использованием только возможностей языка C ++. Я думаюstd::is_base_of
может быть реализовано с точки зренияstd::is_convertible
, используя базовые и производные указатели. Но я могу'не представляю, какstd::is_standard_layout
может быть реализовано. Там могут быть и другие функции, которые не имеютмне пришло в голову
Итак, я прав здесь? Разве невозможно написать полный порт стандартной библиотеки в C ++ 11, используятолько Особенности языка C ++?
* Я знаю STL иC ++ стандартная библиотека " не являются строго взаимозаменяемыми, но, очевидно, я имею в виду C ++ Standard Libary в данном случае.