Всё для программирования C++ Builder

Приложения C++Builder можно, конечно, разрабатывать в любой последовательности, как бог на душу положит. Компонентов в C++Builder множество, функции многих из них понятны. Так что стоит ли мудрствовать: переноси компоненты на форму, пиши обработчики их событий и получай награду за прекрасно сделанное приложение.
В данном интернет учебнике CuBook.pro, приведенные примеры так и строились. Это были тестовые приложения, единственной задачей которых было показать возможности различных компонентов.

Описанная ниже строка форматирования используется в функциях Format, FormatBuf, FmtStr, StrFmt, StrLFmt и др.
Строка содержит обычные символы и спецификаторы формата полей. Обычные символы просто копируются в выходную строку, а спецификаторы определяют форматирование аргументов из заданного списка.
Спецификации формата начинаются с символа % и имеют вид:
"%" [index":"]["-"] [width] ["." prec] type
Единственно обязательным элементом спецификации является type - символ, указывающий на то, как будет трактоваться аргумент. Остальные необязательные элементы задают параметры форматирования:
Значение | Описание |
[index ":"] | Устанавливает текущий индекс массива аргументов в заданное значение index. Индексы начинаются с 0. Например, спецификатор %0: переводит индекс на начало массива и обеспечивает повторное форматирование первого аргумента. |
["-"] | Обеспечивает выравнивание результата влево с заполнением оставшихся правых позиций поля пробелами. В отсутствие спецификатора ["—"] выравнивание производится вправо. |
[width] | Устанавливает минимальную ширину поля в результирующей строке. Если результат преобразования короче ширины поля, происходит выравнивание вправо (или влево, если был записан спецификатор ["—"]) с заполнением лишних позиций пробелами. |
["." prec] | Спецификатор точности, определяющий число выводимых символов (в зависимости от принятого формата). Спецификатор записывается после символа точки (.), чтобы отделить его от предшествующего спецификатора width. |
Значения спецификаторов index, width и prec могут задаваться в виде целых значений или в виде символа звездочки (*).В последнем случае предполагается, что значение спецификатора задается очередным аргументом из списка.

Описанная ниже строка формата, используется во многих функциях ввода данных (scanf, fscanf, sscanf и др.). Строка может включать три вида элементов:
- пробельные символы (пробел « », табуляцию «\t», символ новой строки «\n»
- не пробельные печатные символы (кроме %)
- спецификации формата
Если в строке встретился пробельный символ, то с этого момента пробельные символы до первого не пробельного символа считываются из входного потока, но не участвуют в присваивании значений переменным (игнорируются).
Если в строке встретился печатный не пробельный символ, то с этого момента из входного потока считывается и игнорируется последовательность символов, встретившаяся в строке формата. Если последовательность символов во входном потоке не соответствует записанной в строке формата, то форматирование прерывается.
Спецификации формата начинаются с символа % и имеют вид:
%, [*] [width] [FIN] [h|l|L] type
Все символы спецификации записываются без пробелов между ними.

Строка формата, используемая во многих функциях вывода данных (printf, cprintf, sprintf и др.), состоит из обычных символов, управляющих последовательностей символов и спецификаций полей формата вывода аргументов. Обычные символы и управляющие последовательности просто копируются в выходную строку.
Спецификации полей формата начинаются с символа % и имеют вид:
%[flags] [width] [.precision] [F|КIh|l|L]type
Все символы спецификации записываются без пробелов между ними.
Единственно обязательным элементом спецификации является type - символ, указывающий на тип данных вводимого поля. Остальные необязательные элементы задают параметры форматирования:
Значение | Описание | |
[flags] | Флаги выравнивания, управления печатью знака числа, управления пробелами, десятичной точкой, основанием печати (восьмеричная, шестнадцатеричная) | |
[width] | Ширина поля - минимальное число выводимых символов | |
[.precision] | Спецификатор точности - максимальное количество печатаемых символов или минимальное количество разрядов печатаемого целого | |
[F|N|h|l|L] | Модификаторы, изменяющие размер аргумента по умолчанию: | |
N F h l L | ближний указатель (near) дальний указатель (far) short int long long double |

Основные синтаксические правила написания программ на языке С++ сводятся к следующему:
1. Прописные и строчные буквы считаются разными символами. Поэтому, например, идентификаторы DATABASE, DataBase, Database и database относятся к совершенно разным переменным, константам или объектам. При записи идентификаторов могут использоваться латинские буквы, цифры, символ подчеркивания "_". Идентификатор не может начинаться с цифры и не может содержать пробельных символов. Длина идентификатора не ограничена, но ради удобства чтения программы надо стремиться использовать короткие и осмысленные идентификаторы.

Технология COM (Component Object Model - компонентная модель объектов) предоставляет возможность одной программе (клиенту) работать с объектом другой программы (Сервера). СОМ - это модель объекта, которая предусматривает полную совместимость во взаимодействии между компонентами, написанными разными компаниями и на разных языках. При этом неважно, где выполняются программы: в одном потоке, в разных потоках, на разных компьютерах.
С точки зрения СОМ приложение содержит несколько объектов (в частном случае может быть один объект). Каждый объект имеет один или несколько интерфейсов. В интерфейсе описаны методы объекта, к которым могут получить доступ внешние программы. Если интерфейсов несколько, каждый из них экспонирует некоторое подмножество методов, выполняющих однородные функции.

Рассмотрим на примере, как можно постоянно наблюдать за сервером, осуществляя его оперативный мониторинг. Сделать это очень просто. Надо соединиться с сервером и, не закрывая этого соединения, установить свойство DDEItem компонента DdeClientltem равным имени того компонента DdeServerltem на сервере, информацию от которого требуется получать. До тех пор, пока соединение открыто, изменяющаяся информация с сервера постоянно будет поступать на компонент DdeClientltem клиента.

C++ Builder 6 - это мощная система визуального объектно-ориентированного программирования, позволяющая решать множество задач, в частности:
1. Создавать законченные приложения для Windows самой различной направленности, от чисто вычислительных и логических, до графических и мультимедиа.
2. Быстро создавать (даже начинающим программистам) профессионально выглядящий оконный интерфейс для любых приложений, написанных на любом языке. В частности, с помощью C++ Builder можно объединить в единую систему с удобным современным интерфейсом имеющиеся на предприятии прикладные программы DOS, Windows и др. Интерфейс удовлетворяет всем требованиям Windows и автоматически настраивается на ту систему, которая установлена на компьютере пользователя, поскольку использует многие функции, процедуры, библиотеки Windows.