Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > cpp из VisualC++6.0 в Builder6.0


Автор: Гость_Дмитрий 5.8.2004, 02:53

Решил использовать свои исходники, написанные под VC6.0 для создания
небольшой проги в Builder6.0.
Так вот, при компиляции вышла ошибка такого рода:
==[cpp]===
void f1(HDC hdc);
void f1(HBITMAP hbm);
=========

Ошибка: f1(void*) и f1(void*)

Глянул в includ-ы так там возможны два варианта определения
макроса DECLARE_HANDLE, один из которых и есть void*. Но в VC он определен другим вариантом (как struct {int unused;}). Значит дело в #define-ах?

Кто сталкивался с подобной проблемой и смог ее решить, подскажите плиз
чего надо дописать перед #include<windows.h> чтобы заработало.
Или может по-другому можно разрешить траблу.

С уважением, Дмитрий.

Автор: srd 5.8.2004, 04:01
Перед включением windows.h и любых других стандартных заголовков для Windows определи макрос
#define STRICT

Автор: Гость_Дмитрий 6.8.2004, 00:43
Благодарю за ответ.
Для конкретной проблемы помогло.
Теперь появилась новая проблема:
в #include<stdlib.h> не определяются макросы min и max
Как тут поступить?
В принципе меня не затруднит внаглую скопировать их определение,
но может и в других include-ах могут возникнуть подобные проблемы?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)