Какое определение встроенного вы хотите использовать? Это встроенный набор инструментов компилятора, который у вас есть да , так и должно быть. Это лечится специально компилятором? нет , компилятор обрабатывает этот тип как любой определенный пользователем тип. Обратите внимание, что то же самое, вероятно, применимо ко многим другим языкам, за которые большинство людей ответит да .
Одной из основных задач комитета по С ++ является поддержание базового языка на минимальном уровне и обеспечение максимально возможной функциональности в библиотеках. Это имеет две цели: основной язык более стабилен, библиотеки могут быть переопределены, расширены ... без изменения ядра компилятора. Но что более важно, тот факт, что вам не нужна специальная поддержка компилятора для обработки большей части стандартной библиотеки, гарантирует, что базовый язык достаточно выразителен для большинства применений.
Упрощенно сказано в отрицательной форме: если бы для реализации языка требовалась специальная поддержка компилятора std::string
, это означало бы, что у пользователей недостаточно сил, чтобы выразить это или подобное понятие в основном языке.