Главная » C++, C++ Builder » Общие вопросы по CBuilder (FAQ)

0

Что такое C++ Builder?

C++Builder это собственное имя нового инструмента для быстрого создания приложений фирмы Borland. В этой книге мы сокращаем это имя до CBuilder. В целом это Delphi, использующий С++ как язык разработки. CBuilder позволяет быстро создавать приложения на базе форм при использовании простого стиля конструирования drag-and-drop. Все компоненты CBuilder определяются свойствами, так что определение нового объекта или отображение формы сводится к добавлению нового компонента в форму (или новой формы в проект) и установке некоторых его свойств для определения его поведения.

CBuilder также характеризуется набором инструментов типа «туда и обратно». Изменения, сделанные в редакторе форм, немедленно отражаются в коде. Точно также, изменения, сделанные в коде, отражаются в представлении формы.

Ради чего мне стоит использовать CBuilder?

Если вы работаете с C++, создавая приложения для автоматизации различных рабочих мест (как большинство из нас), вы должны серьезно подумать об использовании CBuilder вместо тех программных средств, которые вы обычно используете. CBuilder отводит главную роль компилятору C++ промышленного стандарта, дополненному шаблонами, средствами обработки исключительных   ситуаций,   именованными   областями   видимости,   библиотекой   стандартных

шаблонов и другими важными добавлениями.

Это программное средство обеспечивает максимальное увеличение производительности по сравнению с более старыми средствами типа Visual C++ или Borland C++. Кроме того, для наследственности приложений CBuilder может использовать уже имеющиеся коды  MFC  или OWL. И наконец, так как CBuilder может использовать компоненты Delphi, он согласуется с существующей базой кодов тысяч модулей, для которой не требуется перекодирования или переделки.

Может ли CBuilder работать с MFC?

Да, но вы должны иметь версию MFC, поставляемую с Borland C++ версии 5.02 или выше. Кроме того, вы должны компилировать библиотеки MFC, используя файл сборки (makefile), поставляемый Borland. Формы CBuilder могут прямо быть использованы в приложениях MFC (подробнее об этом — в следующих далее вопросах).

Я бы, на самом деле, задал вопрос вам — так ли вы уверены в том, что хотите использовать MFC с CBuilder? MFC — устаревшая система, которая слишком велика, плохо написана, короче говоря, работа с ней обеспечит вам только боль в шее, и ничего больше. Не торопитесь упрекать меня в фанатичности — я профессионально работал с MFC с самого момента появления этой системы (тогда еще с Microsoft C 7.0). Так что я знаю, что говорю, а верить мне или нет — ваше дело.

Может ли CBuilder работать с OWL?

Да, библиотека OWL может быть скомпилирована с CBuilder. Вам придется заново собрать библиотеки, используя компилятор CBuilder, поскольку в CBuilder изменен формат объектных файлов для поддержки обработки исключительных ситуаций, встроенной в новую систему.

Собирается ли фирма Borland избавиться от OWL?

В отношении OWL фирма Borland занимает нейтральную позицию — она не избавляется от этой нее, но перспективы может определить только рынок. Учитывая все обстоятельства, скорее всего в обозримом будущем OWL будет продолжать свою существование,  в  основном  благодаря большому количеству коммерческих приложений, использующих ее.

Что такое VCL?

VCL – это сокращение от Visual Component Library, то есть библиотека визуальных компонентов. VCL — это библиотека компонентов (уже скомпилированных), которая охватывает большинство стандартных объектов Windows. Объекты VCL могут быть как визуальными, так и  не визуальными. Самое важное состоит в том, что VCL это полноценная библиотека (то есть сборник, а не жесткая иерархическая структура),  и  ее  отдельные  компоненты  могут использоваться независимо от системы. Благодаря этому формы VCL могут быть использованы в динамически подключаемых библиотеках (DLL), а также поддерживаются некоторыми другими компиляторами — например, формы CBuilder можно использовать в приложениях на Visual C++.

Где я могу получить дополнительную информацию?

Существует множество различных источников информации о CBuilder. Лучший из них — Web- узел фирмы Borland (http://www.borland.com), который содержит самую свежую информацию по CBuilder, в частности, последние исправления ошибок. Там же вы найдете полную информацию обо всех уже известных ошибках и множество другой технической информации.

Кроме того, на любом Web-узле, посвященном Delphi вы почти наверняка найдете что-то и о

CBuilder.

Как мне скомпилировать программу, если я работаю в режиме редактора Brief Emulation?

В этом режиме для компиляции вы можете воспользоваться комбинацией клавиш Ctrl+F9.

Как мне изменить тип проекта, выбираемый по умолчанию?

Контролирует тип приложения, устанавливаемый по умолчанию при выборе команды File ä New Application окно Object Repository. Для того, чтобы выбрать тип текущего приложения в качестве типа по умолчанию для нового проекта, откройте окно Object Repository, выбрав команду меню File ä New. В открывшемся страничном диалоге перейдите на страницу Projects и выберите тип приложения, который вы хотите поставить для создания по умолчанию. Приложение этого типа будет теперь генерироваться при выборе команды File ä New Application.

У меня пропадает окно сообщений об ошибках. Как его вернуть?

Попробуйте увеличить размер окна редактора — иногда это помогает. Еще вы можете щелкнуть правой кнопкой в окне редактора и во всплывшем меню выбрать пункт Message View (просмотр сообщений).

Мое консольное приложение не использует VCL. Как мне убрать ее из компоновки?

Выберите  команду  главного  меню  View  ä  Project  Makefile.  Найдите  строку,  начинающуюся  с

«ALLLIB». Удалите VCL.LIB из make-файла. Измените CP32MT.LIB на CW32MT.LIB. После этих манипуляций строка «ALLLIB» должна выглядеть следующим образом:

ALLLIB = $(LIBFILES) import32.lib cw32mt.lib

Как мне использовать внешние DLL с CBuilder?

Используйте программу IMPLIB.EXE, которая поставляется с CBuilder для создания библиотеки импорта. После этого обычным образом скомпонуйте полученную библиотеку с вашим приложением.

Как мне создать статическую библиотеку в CBuilder?

Вы не можете этого сделать. CBuilder может создавать только исполняемые файлы и DLL.  Для создания статической библиотеки вам придется использовать версии компилятора, работающие из командной строки и специальную программу LIB.

Где находится Мастер диалогов (Dialog Wizard)?

Мастер диалогов поставляется только с версиями CBuilder Professional и выше; он находится в директории Examples. Для того, чтобы использовать его, вам придется сначала скомпилировать и сынсталлировать его.

Почему при исключении информации отладчика размер EXE-файла не уменьшается?

Информация отладчика хранится в файле, имеющем то же имя, что и ваш проект и расширение

TDS. Поскольку эта информация хранится вне исполняемого файла, ее исключение не уменьшит его размера.

Что за файлы создает CBuilder? Которые из них я могу удалить?

Кроме исходных файлов вашего приложения (*.CPP, *.H, *.DFM), CBuilder создает еще несколько файлов в директории с исходным кодом. Некоторые из них — такие как *.MAK и *.RES, нужны для того, чтобы собрать ваше приложение. Другие же могут быть удалены после создания исполняемого файла. Можно смело удалять файлы *.OBJ, *.TDS, *.IL?. Файлы *.OBJ — это объектные файлы, включенные в исполняемый файл. Файлы *.TDS — это файлы символов отладчика. Файлы *.IL? — это файлы прогрессирующей  компоновки  (incremental  link).  Кроме того, все  файлы вида  *.~?? — это резервные копии, и при желании вы можете удалить и их. Резервные копии создаются, когда вы производите какие-нибудь изменения в редакторе.

Где находятся компоненты для страницы Samples палитры компонентов?

Вы найдете их в директории \CBuilder\examples\controls. Для того, чтобы использовать их, вам придется сначала их скомпилировать и сынсталлировать (в отличие от бета-версии).

Где находятся управляющие элементы для Internet?

Управляющие элементы для Internet поставляются только с версией CBuilder Professional и выше. Они находятся на странице Internet палитры компонентов.

Замечание

Недавно фирма Borland представила и сделала доступными управляющие элементы для Internet на своем Web-сайте. Так что теперь их можно найти и там (www.borland.com).

Как мне сделать так, чтобы у нескольких компонентов на форме было одинаковое значение свойства?

Проще всего — выбрать все необходимые компоненты, удерживая нажатой клавишу Shift  и щелкая них мышью. Потом надо  просто перейти в Object Inspector и изменить в нем значение требуемого свойства. Это изменение отразится во всех выделенных компонентах.

Источник: Теллес М. – Borland C++ Builder. Библиотека программиста – 1998

По теме:

  • Комментарии