Регистрация
5 Дек 2013
Сообщения
83
Репутация
0
Спасибо
0
Монет
0
обычно в С++ используются массивы символов, вот пример этого - char X [ ] = "bla bla bla";
"char" это символьный тип данных, "X" в этом случае является переменной этого типа.
теперь к самому вопросу, чем является string в С++??и еще вот что - string X = "Bla Bla Bla";
"X" в этом случае что, переменная типа стринг что-ли????
 
template <  class charT,  class traits = char_traits<charT>,  class Alloc = allocator<charT> > class basic_string; typedef basic_string<char> string;
 
String - это класс из стандартной библиотеки. Где-то под капотом у него вполне может быть char[]. Да, в приведенном примере X - переменная типа string, или другими словами, объект класса std::string.
 
Изобретатель языка Страуструп писал, что в C++ надо пользоваться средствами C++, а не оставленными в нем для совместимости средствами С. В частности, в C++ полагается пользоваться string, а не char X[]. А string в C++ является классом C++ для представления строк символов и операций над ними, гораздо более удобным, чем char[] из С. В string X = "Bla Bla Bla" действительно переменная Х имеет тип string.
 
Назад
Сверху