Как назначить строковое значение строковой переменной в C ++ - PullRequest
7 голосов
/ 24 мая 2010

Разве это не должно работать?

string s;
s = "some string";

Ответы [ 3 ]

13 голосов
/ 24 мая 2010

Разве это не должно работать?

string s;
s = "some string";

Ну, на самом деле это пишется std::string, но если у вас есть using namespace std; ( абсолютно зло ) или using std::string; (несколько меньше зла) до этого, оно должно работать - при условии, что вы иметь #include <string> в верхней части вашего файла.

Обратите внимание, однако, что расточительно сначала инициализировать s пустой строкой, просто чтобы заменить это значение в самом следующем операторе. (И если эффективность не была вашей заботой, зачем вам программировать на C ++?) Лучше было бы немедленно инициализировать s до нужного значения:

std::string s = "some string" 

или

std::string s("some string");
11 голосов
/ 24 мая 2010

Да!

По умолчанию строится строка, затем присваивается ее из const char*.

(Почему вы задали этот вопрос? ... вы хотя бы пробовали это?)

0 голосов
/ 27 октября 2018

используйте заголовочный файл string.h или bits / stdc ++. H, затем попробуйте s.assign ("некоторая строка");

...