"Мюррэй Хилл, Бьярн Страустрап. Язык С++" - читать интересную книгу автора комплексного числа, или тип низкого уровня, вроде связанного
списка, то: [a] Не используйте глобальные данные. [b] Не используйте глобальные функции (не члены). [c] Не используйте открытые данные-члены. [d] Не используйте друзей, кроме как чтобы избежать [a], [b] или [c]. [e] Не обращайтесь к данным-членам или другим объектам непосредственно. [f] Не помещайте в класс "поле типа"; используйте виртуальные функции. [g] Не используйте inline-функции, кроме как средство существенной оптимизации. Замечания для программистов на C Чем лучше кто-нибудь знает C, тем труднее окажется избежать писания на C++ в стиле C, теряя, тем самым, некоторые возможные выгоды C++. Поэтому проглядите, пожалуйста, раздел "Отличия от C" в справочном руководстве (#с.15). Там указывается на области, в которых C++ позволяет делать что-то лучше, чем C. Макросы (#define) в C++ почти никогда не бывают необходимы; чтобы определять провозглашаемые константы, используйте const (#2.4.6) или enum (#2.4.7), и inline (#1.12) - чтобы избежать лишних расходов на вызов функции. Старайтесь описывать все функции и типы всех Аналогично, практически нет причин описывать локальную переменную не инициализируя ее, поскольку описание может появляться везде, где может стоять оператор, - не описывайте переменную, пока она вам не нужна. Не используйте malloc() - операция new (#3.2.6) делает ту же работу лучше. Многие объединения не нуждаются в имени - используйте безымянные объединения (#2.5.2). Глава 1 Турне по C++ Единственный способ изучать новый язык программирования - писать на нем программы. - Брайэн Керниган Эта глава представляет собой краткий обзор основных черт языка программирования C++. Сначала приводится программа на C++, затем показано, как ее откомпилировать и запустить, и как такая программа может выводить выходные данные и считывать входные. В первой трети этой главы после введения описаны наиболее обычные черты C++: основные типы, описания, выражения, операторы, функции и структура программы. Оставшаяся часть главы посвящена возможностям C++ по определению новых типов, скрытию данных, операциям, определяемым |
|
|