Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на C / C++

Выпуск № 165
от 07.01.2003, 12:50

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 507
Отправлено ответов: 1103
Активность: 217.5 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

baldr
Статус: Профессиональный
Общий рейтинг: 113.87
URL: Сайт об ОС DOS. Всем, кто любит эту ОС!
[Подробней >>]
kvINT
Статус: Профессиональный
Общий рейтинг: 105.98
Телефон: (34316)2-31-45
[Подробней >>]
Jadd
Статус: Профессиональный
Общий рейтинг: 144.28
[Подробней >>]
 
Eugene
Статус: Опытный
Общий рейтинг: 108.15
URL: мощный файловый архив
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 485. Здравствуйте. Такой вот вопрос возник. Может кто видал достойную замену std::cout ? Хочу что-то тип... (ответов: 1)
Вопрос № 486. Может кто-нибудь подсказать алгоритм вычисления дня недели. Есть разница м/у введённой датой и 1,01,... (ответов: 2)
Вопрос № 487. Ну вот, это случилось и с 4 Builderом. Просто не видит новых строк и отказывается компилировать стар... (ответов: 1)
Вопрос № 489. Здраствуй, Jadd! Пожалуйста, как появится Рихтер на русском, пришли его и мне.... (ответов: 1)

Вопросов: 4, ответов: 5


 Вопрос № 485

Здравствуйте.
Такой вот вопрос возник.
Может кто видал достойную замену std::cout ?
Хочу что-то типа cout с уже перегруженным << , чтобы вывод в прогах можно было легко перестраивать под разные ОСи и графические библиотеки.
К примеру вывод для пользователя писать так:
my_ported_cout << "blah blah" << endl;
с возможностью изменять только реализацию самого my_ported_cout без замены всех конструкций подобного рода.
Скажем под винду чтоб вывод в окошко шел (хэндл передавать объекту
типа my_ported_cout.set_window_handle(hOutputWnd); )
под дос - по стандартному в консольку (stdout)
под юнихи - опять по обстоятельствам в зависимости от того какая приблуда для графики используется.
Есть такое где-нибудь или придется велосипед изобретать?
Удалось реализовать нечто подобное на С, но это трудно назвать универсальным. Используя #ifdef _WINDOWS_ и глобальную переменную-хэндл окна функция сама решает как ей с пользователем общаться. А вывод в версиях программы под ДОС/юнихи(консоль) и под вин отличаются только предварительной инициализацией той самой глобальной переменной путем set_window_handle(hOutputEditBox); для вин версии.
Иллюстрация:
Если есть #define _WINDOWS_
my_cout("Blah blah"); бла-блахает через SetWindowText();
Если нету, то через printf(); в stdout.
сама my_cout() c переменным числом параметров и делает все прозрачно , совсем как printf();
А в С++ я не знаю как такое соорудить чтоб удобно было :)
Вот...помогите советом %)



Вопрос отправлен: 03.01.2003, 20:08
Отправитель: Podbelsky (podbelsky@rbcmail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает baldr

Приветствую Вас, Podbelsky!
Ну... Можно сделать что-то вроде плагина с этим классом... То есть, лежит у тебя dll-ка с
прогой, и в зависимости от ОС меняется. Интерфейсные функции остаются теми же...
А всякие типа, #define _WINDOWS_ работают только для компилятора, то есть, если
ты компилируешь в винде, оно и будет учтено, а в runtime на код эти директивы не влияют.


Ответ отправлен: 03.01.2003, 23:16
Отправитель: baldr


 Вопрос № 486

Может кто-нибудь подсказать алгоритм вычисления дня недели.
Есть разница м/у введённой датой и 1,01,2001 (понедельник).
Зарезервированными функциями пользоваться нельзя. Всё вручную.



Вопрос отправлен: 04.01.2003, 00:46
Отправитель: Lexus

[Следующий вопрос >>] [Список вопросов]

Отвечает kvINT

Добрый день, Lexus!
Подели разницу по модулю на 7 (X%7)
Получится число от 0 до 6.
Это число используй как индекс массива, где лежат дни недели.

Ответ отправлен: 04.01.2003, 17:41
Отправитель: kvINT


Отвечает Jadd

Здравствуйте, Lexus!
А мой код не работает разве? Я же тебе послал пример.
FormatDateTime("dddd", dtDate);

Ответ отправлен: 05.01.2003, 02:34
Отправитель: Jadd


 Вопрос № 487

Ну вот, это случилось и с 4 Builderом. Просто не видит новых строк и отказывается компилировать старые. Такое чувство, что он создал где-то себе копию и работает с ней.



Вопрос отправлен: 04.01.2003, 00:49
Отправитель: Lexus

[Следующий вопрос >>] [Список вопросов]

Отвечает Eugene

Приветствую Вас, Lexus!
Может помочь удаление всех *.obj, *.tds, *.~* и чистка директории, куда по умолчанию проекты ложатся. Всякие прожекты1 в дире $bcbProjectsproject1.*

Ответ отправлен: 06.01.2003, 11:40
Отправитель: Eugene


 Вопрос № 489

Здраствуй, Jadd!
Пожалуйста, как появится Рихтер на русском, пришли его и мне.



Вопрос отправлен: 04.01.2003, 12:17
Отправитель: Jens (jens@supermail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Jadd

Добрый день, Jens!
Ок. Появится буквально в среду. Только просьба писать мне на jadd@rol.ru

Ответ отправлен: 05.01.2003, 01:54
Отправитель: Jadd



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (38)
C / C++ (28)
Perl (4)
Delphi (21)
Pascal (23)
Basic / VBA (12)
Java / JavaScript (7)
PHP (3)
MySQL / MSSQL (5)
Пользователю
Windows 95/98/Me (36)
Windows NT/2000/XP (26)
"Железо" (33)
Поиск информации (17)
Администратору
Windows NT/2000/XP (11)
Linux / Unix (16)
Юристу
Гражданское право (8)
Семейное право (5)
Трудовое право (4)
КоАП (3)

Отправить вопрос всем экспертам выбранной рассылки.




Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное