Читать «Полный справочник по С++» онлайн - страница 452

Герберт Шилдт

Технология .NET предусматривает две прагмы. (Прагмы используются в сочетании с директивой препроцессора #pragma.) Первая прагма, managed, задает управляемый код. Вторая прагма, unmanaged, определяет неуправляемый (т.е. обычный) код. Эти прагмы можно использовать в программе для выбора фрагментов управляемого и неуправляемого кода.

•ИМЙЙ’-"-Л

L1 Атрибут attribute

Компания Microsoft определила атрибут attribute, который используется для объявления другого атрибута.

б Компилирование управляемых программ на языке C++

Пока создавалась эта книга, технологию .NET поддерживал только один компилятор — Microsoft Visual Studio .NET. Для компилирования управляемого кода следует применять опцию /с1г, настраивающую код на систему Common Language Runtime.

Полный спраючник по

Приложение Б

\

Язык C++ и робототехника

Долгое время я интересовался робототехникой, особенно языками управления роботами. Много лет назад я даже разработал и реализовал язык управления небольшими экспериментальными роботами. Хотя я больше не работаю профессионально в этой области, она по-прежнему очень интересует меня. С течением времени средства управления роботами сделали большой шаг вперед. Мы стоим на пороге эры робототехники. Уже существуют роботы, стригущие газоны и моющие полы. Роботы стали частью автомобилей и работают в условиях, опасных для человеческой жизни. Реальностью стали даже военные роботы. В перспективе нас ожидают еще более интересные разработки. По мере внедрения роботов в повседневную жизнь возрастает количество программистов, создающих программы управления роботами, причем большая часть этих программ написана на языке C++.

Язык C++ представляет собой естественный выбор, поскольку программы управления роботами должны быть эффективными. Особенно это относится к низкоуровневым процедурам управления двигателями, а также системам технического зрения, где необходима высокая скорость работы. Хотя некоторые части робототехнических подсистем, например, процессор распознавания естественного языка, можно написать на других языках, скажем, на С#, низкоуровневый код, лучше писать на языке C++. Таким образом, язык C++ и робототехника идут рука об руку.

Если читателей интересует робототехника, особенно создание экспериментальных роботов, им будет полезно ознакомиться с роботом, представленным на рис. Б.1. Этот робот сделал я сам. Он интересен по нескольким причинам. Во-первых, он снабжен бортовым микропроцессором, обеспечивающим выполнение основных функций управления двигателем и работу датчиков обратной связи. Во-вторых, он имеет устройство для приема и передачи информации на базе микросхемы RS-232, которое позволяет ему получать команды от главного компьютера и возвращать результаты. Благодаря этому подходу существует возможность выполнять интенсивные вычисления на удаленном компьютере, не перегружая робот дополнительными устройствами. В-третьих, он имеет видеокамеру, соединенную с беспроводным передатчиком видеосигналов.