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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Совместимость Builder C++ с Visual C++ 
:(
    Опции темы
umator
Дата 2.9.2002, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



В чём причина невозможности работы с объектами C++ (в особенности содержащими виртуальные функции) создаваемыми Builder в программе созданной на Visual C++. На Builder C++ создана DLL, использует её программа на Visual C++. Функции DLL возвращают создаваемые ими объекты.
PM MAIL WWW   Вверх
Fantasist
Дата 3.9.2002, 04:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


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

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



То есть это в общем-то не о совместимости  С++ компиляторов по отношению к языку С++, а об использовании скомпилированного кода одним компилятором в другом. Ну что ж, могу с уверенностью сказать, что по поводу того, как нужно создавать скомпилированный код, никаких стандартов нет. Так что о какой совместимости может быть речь? Если же ты хочешь получить совместимость объектов на уровне бинарного кода, используй COM технологию. Ну или по крайней мере какую-то ее адаптацию к своим нуждам.


--------------------
Волны гасят ветер...
PM MAIL   Вверх
umator
Дата 3.9.2002, 04:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Я столкнулся с такой проблемой, что не могу использовать в программе написанной на Visual C++ динамические библиотеки (DLL) написанные на Builder C++ по причине того, что функции последних создают и возвращают указатели на объекты с виртуальными функциями в своём формате, а программа о нём ничего не зная пытается интерпретировать их по своему.
PM MAIL WWW   Вверх
Fantasist
Дата 3.9.2002, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


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

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



Цитата(umator @ 02.9.2002, 21:30)
Я столкнулся с такой проблемой, что не могу использовать в программе написанной на Visual C++ динамические библиотеки (DLL) написанные на Builder C++ по причине того, что функции последних создают и возвращают указатели на объекты с виртуальными функциями в своём формате, а программа о нём ничего не зная пытается интерпретировать их по своему.

Правильно. Об этом я и сказал, не так ли. А что от нас ожидается узнать.  :)
В том смысле, что мы должны ответить?


--------------------
Волны гасят ветер...
PM MAIL   Вверх
umator
Дата 3.9.2002, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вопрос задан в самом первом пункте :) То, что один код не работает с другим в этом я уже удостоверился. Мне бы хотелось выяснить причину. Что такого делает Builder C++ что не правильно понимается Visual C++. Если есть какая-то информация из достоверного источника, то буду очень признателен...
PM MAIL WWW   Вверх
Fantasist
Дата 4.9.2002, 03:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


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

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



Цитата
Что такого делает Builder C++ что не правильно понимается Visual C++.


Да что угодно. Это его(компилятора) личное дело. Как хочет так и генерит код. Пользователя это заботить не должно, ибо он все равно ничего с этим поделать не может(по большому счету).  Например, в билдере, насколько я помню, все классы наследуются от TObject. Конечно, можно взять отладчик, дизассемблер, да и посмотреть что за код там получается, но это вряд ли тебе даст что-то полезное.


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


Новичок



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

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



А есть ли у тебя сведения по конкретней? Думаю не я один сталкивался с такой проблемой и наверняка кто-нибудь уже посвятил своё время изучению данной проблемы.
PM MAIL WWW   Вверх
Fantasist
Дата 5.9.2002, 02:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


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

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



Смотря какую проблему ты имеешь в виду. Если проблема в использовании объектов - используй COM. Если вопрос о том, какой генериться код, то таких сведений у меня нет.


--------------------
Волны гасят ветер...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
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.0453 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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