║XLR8║
|
||||||
1 | ||||||
Перегрузка операторов вывода для русификации строк19.02.2010, 17:44. Показов 3725. Ответов 38
Метки нет (Все метки)
0
|
19.02.2010, 17:44 | |
Ответы с готовыми решениями:
38
Перегрузка операторов умножения и присваивания для строк. Перегрузка операторов ввода и вывода Перегрузка операторов ввода вывода Перегрузка операторов ввода и вывода |
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
||||||
19.02.2010, 18:07 | 2 | |||||
1
|
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
|
19.02.2010, 18:32 | 4 |
VS 2008
Ну даже так... в чем ошибка? Может не все так страшно?
0
|
║XLR8║
|
||||||
19.02.2010, 18:39 [ТС] | 5 | |||||
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
19.02.2010, 18:46 | 6 |
outoftime, если я не ошибаюсь, вроде бы нельзя перегружать операторы для встроенных типов данных
Добавлено через 37 секунд Напиши свой строковый класс, и для него перегружай вывод
1
|
Модератор
12454 / 7479 / 1752
Регистрация: 25.07.2009
Сообщений: 13,755
|
|||||||||||
19.02.2010, 19:07 | 7 | ||||||||||
В gcc вот так работает:
Код
rutext.obj : error LNK2019: unresolved external symbol __imp__CharToOemA@8 refer enced in function "public: __thiscall RuText::RuText(class std::basic_string<cha r,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0RuTex t@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) rutext.exe : fatal error LNK1120: 1 unresolved externals Добавлено через 9 минут В прочем, если в MS VS 2005 создать проект "console application", то вот так
1
|
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
|
19.02.2010, 19:20 | 9 |
а если сделать print(const char* x, ...) чтобы она могла принимать много строк. так не будет удобнее?
1
|
Модератор
12454 / 7479 / 1752
Регистрация: 25.07.2009
Сообщений: 13,755
|
||||||
19.02.2010, 19:22 | 10 | |||||
outoftime, например тем, что можно вот так
0
|
║XLR8║
|
|||||||||||||||||||||
19.02.2010, 21:13 [ТС] | 11 | ||||||||||||||||||||
insideone, чем это удобнее?
easybudda, я просто покажу код, и вы сами все поймете (наверное) my.hpp
0
|
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
|
19.02.2010, 21:20 | 12 |
1
|
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
|||||||||||
19.02.2010, 21:26 | 14 | ||||||||||
1
|
║XLR8║
|
||||||
19.02.2010, 21:36 [ТС] | 15 | |||||
insideone, а, в этом смысле.. это мне не мешает, вот если-бы print()-ом можно было-бы выводить значения (так как в printf()), вот это уже другое дело..
Добавлено через 2 минуты да, и если я не ошибаюсь ваш пример можно заменить на:
0
|
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
||||||
19.02.2010, 21:41 | 16 | |||||
1
|
║XLR8║
|
||||||
19.02.2010, 21:41 [ТС] | 17 | |||||
insideone, еще раз спасибо, а то я написал функцию и сам до сих пор полностью не понимаю какой обьем работы она может сделать))
ваш фрагмент заменил на:
0
|
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
|
19.02.2010, 21:47 | 18 |
1
|
║XLR8║
|
|
19.02.2010, 22:25 [ТС] | 19 |
insideone, меня осенило!!! с вашей помощью, я понял как создать клас, который будет полным заменителем cout, мне просто надо переписать тоже для всех типов в заголовочном файле..
Добавлено через 20 минут insideone, еще один вопрос: как перегрузить std::endl для нового класа?? Добавлено через 10 минут и как перевести один символ а не всю строку Добавлено через 18 секунд имеется в виду в кирилицу
0
|
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
|
|||||||||||
19.02.2010, 22:30 | 20 | ||||||||||
Ну а это не тоже самое что переводить строку в котором 1 символ... или как?
1
|
19.02.2010, 22:30 | |
19.02.2010, 22:30 | |
Помогаю со студенческими работами здесь
20
Перегрузка операторов ввода\вывода Перегрузка операторов ввода/вывода Перегрузка операторов ввода-вывода Перегрузка операторов ввода/вывода. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |