Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не компилит << для string, cout<<u<<endl; где u это string 
V
    Опции темы
Syberex
Дата 15.2.2007, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 15.9.2006
Где: Украина

Репутация: нет
Всего: нет



Вот такая ерунда ,

Код

string u(mas,poz-LenthWord,LenthWord);
cout<<u<<endl;


это чудестно компилится на Borland 6 , но в Borland Developer Studio 2006 строчка    cout<<u<<endl; не компилится и пишет:
 [C++ Error] Universal.cpp(229): E2094 'operator<<' not implemented in type 'ostream' for arguments of type 'string'

что это такое? и как от этого избавится? 
--------------------
whole power in artificial intelligences
PM MAIL ICQ   Вверх
TaNK
Дата 15.2.2007, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 669
Регистрация: 29.10.2006
Где: Краснодар

Репутация: нет
Всего: 1



Цитата(Syberex @ 15.2.2007,  17:16)
Вот такая ерунда ,

Код

string u(mas,poz-LenthWord,LenthWord);
cout<<u<<endl;


это чудестно компилится на Borland 6 , но в Borland Developer Studio 2006 строчка    cout<<u<<endl; не компилится и пишет:
 [C++ Error] Universal.cpp(229): E2094 'operator<<' not implemented in type 'ostream' for arguments of type 'string'

что это такое? и как от этого избавится?

ругается на << может попробуешь без вторых << обойтись


--------------------

Oracle 11.2.0.3.0
FireBird 1.0-2.5


PM MAIL ICQ   Вверх
Syberex
Дата 15.2.2007, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 15.9.2006
Где: Украина

Репутация: нет
Всего: нет



он и без второй всё равно ругается
--------------------
whole power in artificial intelligences
PM MAIL ICQ   Вверх
profispb
Дата 15.2.2007, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 27.12.2005
Где: Санкт - Петербург

Репутация: 1
Всего: 1



Тогда перегрузка оператора <<
--------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало!
PM MAIL ICQ   Вверх
Syberex
Дата 15.2.2007, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 15.9.2006
Где: Украина

Репутация: нет
Всего: нет



чёто не понял, как это перегрузить оператор ввода вывода, он ведь от меня не зависит, по крайней мере тут.
--------------------
whole power in artificial intelligences
PM MAIL ICQ   Вверх
profispb
Дата 15.2.2007, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 27.12.2005
Где: Санкт - Петербург

Репутация: 1
Всего: 1



У меня была проблема, только с классом вот помогла только перегрузка оператора <<
--------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало!
PM MAIL ICQ   Вверх
Syberex
Дата 15.2.2007, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 15.9.2006
Где: Украина

Репутация: нет
Всего: нет



а примерчик скинешь?
--------------------
whole power in artificial intelligences
PM MAIL ICQ   Вверх
profispb
Дата 15.2.2007, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 27.12.2005
Где: Санкт - Петербург

Репутация: 1
Всего: 1



Давно было. года 2-а назад, щас уже и не вспомню. Посмотри в любой книге по программированию на С++ или в нете. Тебе стандартная перегрузка нужна есть в любой книге.
--------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало!
PM MAIL ICQ   Вверх
Syberex
Дата 15.2.2007, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 15.9.2006
Где: Украина

Репутация: нет
Всего: нет



я слабо представляю перегрузку << , это тут даже не уместно.
--------------------
whole power in artificial intelligences
PM MAIL ICQ   Вверх
Fazil6
Дата 15.2.2007, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 35
Всего: 60



что за тип string ?
не может быть, чтобы std::cout не понимал std::string
PM MAIL   Вверх
Xenon
Дата 15.2.2007, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1529
Регистрация: 12.4.2006

Репутация: 11
Всего: 50



Ну конечно глобально можно так:
Код

std::ostream& operator<< (std::ostream& os,const std::string& str)
{
    for (int i=0;i<str.size();++i)
    {
        os << str[i];
    }
    return os;
}


Но по-любому хрень - std::string работает с <<

Это сообщение отредактировал(а) Xenon - 15.2.2007, 18:34


--------------------
user posted image  
PM MAIL   Вверх
_stranger_
Дата 15.2.2007, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 3.10.2006
Где: город-герой Киев

Репутация: 2
Всего: 2



сильно сомневаюсь, но может все-таки:
Код

#include <string>

 smile 
PM MAIL   Вверх
V.A.KeRneL
Дата 15.2.2007, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vadim A. Kazantsev
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 3.12.2006
Где: Moscow, Russia

Репутация: 1
Всего: 14



Блин, по-моему, _stranger_ прав: 
Код

//#include <cstdio>
#include <iostream>
#include <string>

using namespace std;


З.Ы. А имхо, всё-таки, лучше так: 
Код

std::cout << u << std::endl;

Писать чуть побольше, зато философски правильнее и даже в большой программе (с многими пространствами имён) путаницы не будет.
А если уж неймётся непременно сделать «юзинг», то лучше каждую переменную по отдельности заносить: 
Код

using std::string;

using std::cin;
using std::cout;
using std::cerr;

using std::endl;

using std::>>;
using std::<<;

Не ленитесь больше, чем нужно, и проблем будет меньше. smile


Это сообщение отредактировал(а) V.A.KeRneL - 15.2.2007, 21:32


--------------------
«C'est un pense-creux d'ici. C'est le meilleur et le plus irascible homme du monde...» © Ф.М. Достоевский, «Бесы»
---/)/)---(\.../)---(\(\
--(':'=)---(=';'=)---(=':')
(")(")..)-(").--.(")-(..(")(")

PM MAIL IM ICQ AOL YIM MSN   Вверх
vinter
Дата 15.2.2007, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 13
Всего: 56



а это 
Код
using std::>>;
using std::<<;


зачем??


--------------------
Мой блог
PM MAIL WWW   Вверх
V.A.KeRneL
  Дата 16.2.2007, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vadim A. Kazantsev
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 3.12.2006
Где: Moscow, Russia

Репутация: 1
Всего: 14



На всякий пожарный. smile Если будут в дальнейшем какие-нибудь странные проблемы, можно попробовать...

З.Ы. Syberex, если проблема решена, не забудь пометить тему как решённую.



--------------------
«C'est un pense-creux d'ici. C'est le meilleur et le plus irascible homme du monde...» © Ф.М. Достоевский, «Бесы»
---/)/)---(\.../)---(\(\
--(':'=)---(=';'=)---(=':')
(")(")..)-(").--.(")-(..(")(")

PM MAIL IM ICQ AOL YIM MSN   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0556 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.