Конгер Д.
Физика для разработчиков компьютерных игр
стр. 153

но этот случай - исключение из правила. Поскольку определение класса mesh_data содержится в private-разделе определения класса d3d_mesh, и поскольку объектам класса d3d_mesh нужен быстрый доступ к данным в объектах класса mesh_data, элементы данных класса me sh_data объявлены как public.

Предупреждение

Опытные программисты, хорошо знающие язык C++, заметят, что можно и не объявлять элементы данных класса mesh_data как public. Их можно объявить как private и создать встраиваемые (inline) public-методы доступа к ним. Использование этих методов позволит избежать снижения скорости при доступе к данным. Это правда. Компилятор C++ подставляет код встраиваемых методов в места их вызова, примерно так же, как препроцессор - макрокоманды в программах на С.

Если вы реализуете класс с подсчетом ссылок более сложный, чем класс mesh_data, я настоятельно рекомендую создать public-методы доступа к его элементам данных, а сами элементы данных объявить как private. Хотя код станет несколько более объемным, он будет надежнее, а использование встраиваемых методов не приведет к снижению скорости.

В классе mesh_data есть свои методы. Точнее говоря, в нем есть конструктор и деструктор. Их код приведен в листинге 6.5.








Новости
Антивирусы и облачные сервисы портят сохранения Dark Souls Remastered
Вчера комьюнити-менеджер Bandai Namco под ником Izmar подтвердил проблему в Steam, посоветовав ограничить доступ антивирусов и других программ вроде облачных сервисов Google и Amazon к файлам ремастера Dark Souls.
Facebook анонсировала новую игровую платформу с интерактивными видео
«Facebook анонсировала несколько новых функций видеотрансляций, которые позволят пользователям сделать свои прямые трансляции похожими на игры с опросами и викторинами», — отмечает The Verge.