Разве это не должно работать?
string s;
s = "some string";
Да!
По умолчанию создается строка, а затем она присваивается из const char *
.
(Почему вы разместили этот вопрос? ... вы хотя бы пробовали?)
Разве это не сработает?
string s; s = "какая-то строка";
Ну, на самом деле это пишется std :: string
, но если у вас есть с использованием пространства имен std;
( абсолютно злой ) или с использованием std :: string;
(несколько менее злой) до этого он должен работать - при условии, что у вас также есть #include
в верхней части файла.
Обратите внимание, однако, на то, что сначала инициализировать s
пустой строкой просто для замены этого значения в следующем операторе нерационально.(А если эффективность не была вашей заботой, зачем вам программировать на C ++?) Лучше было бы сразу инициализировать s
правильным значением:
std::string s = "some string"
или
std::string s("some string");