Бьерн Страуструп. Язык программирования С++ Второе дополненное издание



Pdf көрінісі
бет16/256
Дата11.07.2022
өлшемі2,87 Mb.
#37591
1   ...   12   13   14   15   16   17   18   19   ...   256
Выражение признательности 
Кроме лиц, перечисленных в соответствующем разделе предисловия к первому изданию книги, мне 
хотелось бы выразить свою благодарность Элу Эхо, Стиву Бароффу, Джиму Коплину, Тому Хансену, 
Петеру Джаглу, Брайану Кернигану, Эндрю Кенигу, Биллу Леггету, Лоррейн Мингаччи, Уоррену 
Монтгомери, Майку Моубри, Робу Мюррею, Джонатану Шапиро, Майку Вилоту и Петеру Вейнбергу за 
комментарии черновых вариантов второго издания книги. В развитии языка С++ за период от 1985 до 
1991 гг. принимали участие многие специалисты. Я могу упомянуть лишь нескольких из них: Эндрю 
Кенига, Брайана Кернигана, Дага Макилроя и Джонатана Шапиро. Кроме того, выражаю 
признательность многим участникам создания справочного руководства С++, предложившим свои 
варианты, а также тем, с кем довелось нести тяжкую ношу в течение первого года работы комитета 
X3J16 по стандартизации языка С++. 
Мюррей-Хилл, шт.Нью Джерси 
Бьерн Страуструп 


Бьерн Страуструп.
Язык программирования С++ 
 
11 
ПРЕДИСЛОВИЕ К ПЕРВОМУ ИЗДАНИЮ 
"Язык образует среду мышления и формирует представление о том, о чем мы думаем". 
(Б.Л.Уорф) 
С++ - язык общего назначения и задуман для того, чтобы настоящие программисты получили 
удовольствие от самого процесса программирования. За исключением второстепенных деталей он 
содержит язык С как подмножество. Язык С расширяется введением гибких и эффективных средств, 
предназначенных для построения новых типов. Программист структурирует свою задачу, определив 
новые типы, которые точно соответствуют понятиям предметной области задачи. Такой метод 
построения программы обычно называют абстракцией данных. Информация о типах содержится в 
некоторых объектах типов, определенных пользователем. С такими объектами можно работать 
надежно и просто даже в тех случаях, когда их тип нельзя установить на стадии трансляции. 
Программирование с использованием таких объектов обычно называют объектно-ориентированным. 
Если этот метод применяется правильно, то программы становятся короче и понятнее, а 
сопровождение их упрощается.
Ключевым понятием С++ является класс. Класс - это определяемый пользователем тип. Классы 
обеспечивают упрятывание данных, их инициализацию, неявное преобразование пользовательских 
типов, динамическое задание типов, контролируемое пользователем управление памятью и средства 
для перегрузки операций. В языке С++ концепции контроля типов и модульного построения программ 
реализованы более полно, чем в С. Кроме того, С++ содержит усовершенствования, прямо с классами 
не связанные: символические константы, функции-подстановки, стандартные значения параметров 
функций, перегрузка имен функций, операции управления свободной памятью и ссылочный тип. В С++ 
сохранены все возможности С эффективной работы с основными объектами, отражающими 
аппаратную "реальность" (разряды, байты, слова, адреса и т.д.). Это позволяет достаточно эффективно 
реализовывать пользовательские типы. 
Как язык, так и стандартные библиотеки С++ проектировались в расчете на переносимость. Имеющиеся 
реализации языка будут работать в большинстве систем, поддерживающих С. В программах на С++ 
можно использовать библиотеки С. Большинство служебных программ, рассчитанных на С, можно 
использовать и в С++. 
Данная книга в первую очередь рассчитана на профессиональных программистов, желающих изучить 
новый язык и использовать его для нетривиальных задач. В книге дается полное описание С++, 
содержится много завершенных примеров и еще больше фрагментов программ. 


Достарыңызбен бөлісу:
1   ...   12   13   14   15   16   17   18   19   ...   256




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет