Я не могу объявить строку в своей программе:
это просто не работает. Он говорит, что строка является необъявленным идентификатором. Чего мне не хватает в пространстве имен или включении или что-то в этом роде?
спросил 2 октября 2011 г. в 7:26
Убедитесь, что вы включили этот заголовок:
А затем используйте std::string вместо string. Это потому, что строка определена в пространстве имен std.
И не пишите это в области пространства имен:
использование пространства имен std; //плохая практика, если вы пишете это в области пространства имен
Однако писать это в области видимости функции не так уж и плохо. Но лучший тот, который я предложил раньше:
Используйте std::string как:
115 золотых знаков666 серебряных знаков851 бронзовый знак
ответил 2 окт. 2011 в 7:28
ответил 2 окт. 2011 в 8:40
105 золотых знаков632 серебряных знака656 бронзовых знаков
Я получаю сообщение об ошибке: идентификатор «строка» не определен.
Однако я включаю string.h, и в моем основном файле все работает нормально.
Может кто-нибудь объяснить мне, почему это происходит?
спросил 22 авг. 2011 в 11:22
4 золотых знака28 серебряных знаков40 бронзовых знаков
ответил 22 авг. 2011 в 11:23
38 золотых знаков256 серебряных знаков465 бронзовых знаков
22 золотых знака192 серебряных знака273 бронзовых знака
Вы забыли пространство имен, о котором говорите. Добавить
, чтобы постоянно избегать std::string.
ответил 22 авг. 2011 в 11:24
11 золотых знаков79 серебряных знаков127 бронзовых знаков
Поскольку строка определена в пространстве имен std. Замените строку на std::string или добавьте
под строками включения.
Вероятно, это работает в main.cpp, потому что в каком-то другом заголовке есть эта строка using (или что-то подобное).
63 золотых знака784 серебряных знака985 бронзовых знаков
2 золотых знака19 серебряных знаков28 бронзовых знаков
Вы должны использовать пространство имен std. Если этот код в main.cpp нужно написать
Если это объявление находится в заголовке, то вам не следует включать пространство имен и просто писать
ответил 22 авг. 2011 в 11:25
вот весь код
интересуют три строки в конце с delete
Почему вне, если все нормально, а внутренний идентификатор не определен
Идентификатор «строка» не определен?
Я получаю сообщение об Деньги: идентификатор «строка» не определен.
Однако я включаю string.h, и в моем основном файле все работает нормально.
Может кто-нибудь объяснить мне, почему это происходит?
22 авг. 2011, в 13:45
Причины, которые строка Определена в пространстве имен std. Заменить строку на std::string или строки
ниже ваших строк include.
Вероятно, он работает в main.cpp, потому что в другом заголовке есть эта строка, использующая (или что-то подобное).
Вы забыли пространство имен, на которое вы ссылаетесь. Добавить
, чтобы избежать std::string постоянно.
Вы должны использовать имена пространства std. Если этот код в main.cpp вы должны написать
Если это объявление находится в заголовке, то вам не нужно включать пространство имен и просто написать





