|
Глубинное родство этих языков программирования позволяет им взаимодействовать, расширяя возможности каждого.Язык JAVA во многом произошел от С/С++, у которых были позаимствованы синтаксис и базовая семантика. Однако связь между ними не ограничивается только этим.
Категория: Языки программирования |
Просмотров: 198 |
|
По управлению памятью современные языки программирования и средства разработки можно условно разделить на те, где программист ответственен за управление памятью и обязан вовремя освобождать неиспользуемые блоки, и на языки с так называемой сборкой мусора. Рассмотрим основополагающие принципы и тех и других. Кроме того, в этой статье я предложу способы автоматизации управления памятью в тех системах, где управлением памятью занимается программист, а также плюсы и минусы сборки мусора
Категория: Языки программирования |
Просмотров: 200 |
|
Существуют два диаметрально противоположенных, но одинаково распространенных мнения, которые можно выразить как "C++ это C с классами" и "C++ и C --- разные языки программирования". В общем-то, не важно, какого мнения придерживаться, но интересно иное --- в каких случаях какой из этих языков (или вариантов языка) предпочтительнее.
Категория: Языки программирования |
Просмотров: 193 |
|
Объектно-ориентированное программирование позволяет реализовать эволюционный множественный полиморфизм. Однако тесная связь между методами и данными ведет к громоздкости интерфейсов в добавляемых классах, жесткому порядку их следования в эволюционной иерархии и невозможности повторного использования отдельных составляющих. Процедурный подход обеспечивает более гибкое расширение, как при добавлении данных, так и мультиметодов.
Категория: Языки программирования |
Просмотров: 207 |
|
В предлагаемой статье описывается мое видение некоторых компиляторов С/C++ под OS/2. Должен сразу оговориться, что не претендую ни на полноту изложения, ни на энциклопедическую точность; это, скорее, просто ощущения и впечатления, разбавленные общеизвестными фактами, а где-то и наоборот. Где-то изложение может показаться претенциозным, но это во всяком случае не нарочно - больше от вероятного незнания мной некоторых фактов.
Категория: Языки программирования |
Просмотров: 179 |
|
Допустим у вас есть некоторое приложение, написанное на C++(Vм). Как оно у вас появилось не суть важно, может быть это ваша старая разработка, может быть вы решили сначала отладить предметную часть. Важно то что вы горите желанием вынести часть классов в объектные модули и оформить их в виде ActiveX, COM и ATL объектов. Есть несколько типовых проблем связанных с таким переносом.
Категория: Языки программирования |
Просмотров: 215 |
|
Хотя все компиляторы с языка Си предназначены для генерации наиболее быстрых и компактных программ, качество оптимизации кода у них может быть совершенно различное. Разработчики компиляторов с языка Си первоначально стремились к полному согласию со стандартом Кернигана и Ричи. В последствии - к уменьшению времени компиляции. Затем - к полной поддержке моделей памяти семейства микропроцессоров 80х86. Затем пытались поддерживать переносимость исходных текстов программ путем предоставления совместимых с UNIX библиотек функций. После этого создавали специализированные библиотеки функций для обеспечения низкоуровневого доступа к характерным для персональных компьютеров (PC) возможностям. За этим следовали попытки придерживаться развивающегося стандарта ANSI C. После чего следовал возврат к началу, но с развитым интегрированным окружением. И так далее.
Категория: Языки программирования |
Просмотров: 194 |
|
Если вы - системный администратор, специалист по безопасности, или вам
просто интересно, что происходит в вашей локальной сети, то перехват и анализ нескольких сетевых пакетов может быть полезным упражнением. При помощи небольшой программы на языке С и базовых знаний сетевых технологий вы сможете перехватить данные сетевого траффика, даже если они адресованы не вам. В данной статье рассмотрено, как это можно сделать в сети Ethernet, наиболее распространенной на данный момент технологии построения локальных компьютерных сетей.
Категория: Языки программирования |
Просмотров: 229 |
|
Эта статья продолжает тему имитации C++ на чистом C. В данной статье я расскажу как в стиле чистого C организовать обработку данных различного типа, которые могут находится "под одной крышей", например в односвязных или двусвязных списках.
Категория: Языки программирования |
Просмотров: 210 |
|
Допустим у вас есть некоторое приложение, написанное на C++(VC++ если быть корректным). Как оно у вас появилось не суть важно, может быть это ваша старая разработка, может быть вы решили сначала отладить предметную часть. Важно то что вы горите желанием вынести часть классов в объектные модули и оформить их в виде ActiveX, COM и ATL объектов. Есть несколько типовых проблем связанных с таким переносом.
Категория: Языки программирования |
Просмотров: 188 |
|
Поддержка регулярных выражений очень полезна в CGI-программировании.
В C++ отсутствуют встроенные механизмы для работы с ними. Разработчик, однако, может воспользоваться библиотекой Perl Compatible Regular Expressions (PCRE).
Категория: Языки программирования |
Просмотров: 195 |
|
В c++builder 6 для передачи какой-либо информации по сети удобнее всего использовать компоненты закладки internet: tclientsocket и tserversocket. Чтобы лучше разобраться в работе этих компонентов я предлагаю написать простенький сетевой чат, на примере которого можно будет легко увидеть компоненты в действии.
Категория: Языки программирования |
Просмотров: 231 |
|
Простейший способ отключения Alt+Tab - использование функции RegisterHotKey. Вызов этой функции из вашего процесса дает ему превосходство над ОС. Сообщение WM_HOTKEY, которое генерирует определенная комбинация клавиш будет перенаправлено в очередь сообщений вашего процесса. Для блокировки комбинаций клавиш просто не обрабатывайте сообщение WM_HOTKEY присланное в вашу очередь. Ниже приведен конструктор и деструктор демонстрирующие эти действия.
Категория: Языки программирования |
Просмотров: 193 |
|
В среде borland c++ builder есть ряд возможностей, которые повышают удобство использования редактора и отладчика, некоторые из них доступны как через пункты меню, так и с помощью горячих клавиш, однако многие доступны только с клавиатуры. Я не буду описывать "известные" сочетания, такие, как ctrl+c / ctrl+v, которые работают в большинстве windows-приложений. Кроме того, описанные ниже возможности - это не полный список, а только те функции, которые лично я применяю в своей работе.
Категория: Языки программирования |
Просмотров: 165 |
|
При разработке программ часто возникает необходимость модифицировать уже существующие базовые классы объектов: добавлять в них новые данные и методы, перекрывать уже существующие. Предположим, у нас есть класс line, объекты которого представляют линии в пространстве или на плоскости. Такой класс может содержать информацию о геометрии линии в виде массива узлов (отрезков) или метода их порождения. В какой-то момент появляется задача вывода линий на экран. Причём для каждой линии пользователь может задать цвет, которым она будет рисоваться во всех окнах. Этот цвет должен сохраняться-загружаться, импортироваться - экспортироваться вместе с самой линией вплоть до самого её удаления.
Категория: Языки программирования |
Просмотров: 220 |
|
Язык программирования работает на многих уровнях и выполняет различные функции, а потому должен критически рассматриваться по отношению именно к этим уровням и функциям. Именно виртуальные функции — основной объект критики языка Cи++. Cи++ представляет собой интересный эксперимент по адаптации возможностей объектной технологии к традиционному языку программирования. Бьерн Страуструп вполне достоин аплодисментов за то, что ему в голову пришла мысль слить обе технологии воедино. В то же время в Cи++ сохранились проблемы старого поколения средств программного производства. Язык Cи++ обладает тем преимуществом перед Cи, что поддерживает некоторые аспекты объектной технологии, которые могут быть использованы для ограниченного проведения анализа требований и проектирования. Однако процессы анализа, проектирования и реализации проекта все еще в значительной степени остаются внешними по отношению к Cи++. Таким образом, в Cи++ не реализованы важные преимущества объектной технологии, которые прямо бы привели к экономичному производству программной продукции.
Категория: Языки программирования |
Просмотров: 202 |
|
Данный текст, рекомендуется читать в случае если у вас возникли проблемы при работе с bluetooth в среде Borland C++. Принцип работы с bluetooth и в Delphi ,и в Builder'е одинаков. Но ,для того чтобы заработало это в Builder'е, пришлось пойти на некоторые уловки.Итак, первое что вам понадобится – архив, содержащий заголовочные файлы и lib’ы. Заголовочные файлы для удобства складываются в папку include, lib'ы ,соответственно , тоже.
Категория: Языки программирования |
Просмотров: 206 |
|
Мой любимый язык – PHP. Он изящен и прост, но, к сожалению, предназначен только для программирования сайтов. «Обычную» программу на нём не напишешь. К счастью, некоторые технологии, реализованные в PHP можно перенести и в другие языки программирования: например, в C++.
Категория: Языки программирования |
Просмотров: 183 |
|
В статье рассматриваются проблемы, возникающие при работе Borland C++ Builder 6.0
Категория: Языки программирования |
Просмотров: 199 |
|
В статье рассматриваются проблемы, возникающие при работе с исключениями в среде Borland C++ Builder 6.0
Категория: Языки программирования |
Просмотров: 183 |