37
лы форм и пакеты, используемые средствами, идентичны, и могут использовать-
ся в другой среде.
Хотя Delphi и C++ Builder во многом похожи, они имеют и много разли-
чий. Большинство из них обусловлено особенностями языков C++ и Pascal, так
как C++ Builder компилирует код С++, а Delphi компилирует код Object Pascal.
Это приводит к отличиям в средах разработки. Delphi и C++ Builder используют
различные расширения для имен файлов, входящих в проекты. Отчасти это яв-
ляется результатом языковых различий. Несмотря на всю силу С++, Object Pascal
является более «гибким» языком. Элементы управления ActiveX для Internet-
приложений C++ Builder радикально отличаются от одноименных элементов
Delphi. Элементы управления фирмы NetManage, используемые в Delphi, были
заменены в C++ Builder на элементы от NetMasters, содержащие несколько но-
вых элементов.
Поддержка создания элементов управления ActiveX в C++ Builder немного
отличается от Delphi тем, что используется главным образом библиотека шабло-
нов ActiveX (ATL), которая представляет собой библиотеку классов С++ для со-
здания ActiveX.
Программы Delphi всегда будут компилироваться быстрее программ C++
Builder. Дело в том, что язык программирования Pascal менее сложен, чем С++.
Перекомпилированные заголовки и пошаговая компоновка в C++ Builder помо-
гают ускорить компиляцию и компоновку, но программы Delphi всё равно ком-
пилируются на много быстрее.
Далее, программы C++ Builder всегда немного больше, чем программы
Delphi. Это обусловлено несколькими факторами, но прежде всего тем, что биб-
лиотека VCL написана на Object Pascal. Программы C++ Builder должны вклю-
чать как библиотеку поддержки C++, так и библиотеку поддержки Object Pascal.
C++ и Pascal по-разному обрабатывают исключения и имеют различные коды
динамической идентификации типов. В результате приложения C++ Builder со-
держат дополнительный код.
Другие различия являются следствием того, что можно назвать эффектом
опережения. C++ Builder 1 получил большинство своих характеристик от
Delphi2. В C++ Builder 1 не было добавлено ничего существенно нового по срав-