Книга: Разработка ядра Linux
Использование директивы typedef
Использование директивы typedef
Разработчики ядра не любят определять новые типы с помощью оператора typedef
, и причины этого довольно трудно объяснить. Разумное объяснение может быть следующим.
• Определение нового типа через оператор typedef
скрывает истинный вид структур данных.
• Поскольку новый тип получается скрытым, то код более подвержен таким нехорошим вещам, как передача структуры данных в функцию по значению, через стек.
• Использование оператора typedef
— признак лени.
Чтобы избежать насмешек, лучше не использовать оператор typedef
.
Конечно, существуют ситуации, в которых полезно использовать оператор typedef
: сокрытие специфичных для аппаратной платформы деталей реализации или обеспечение совместимости при изменении типа. Нужно хорошо подумать, действительно ли оператор typedef
необходим или он используется только для того, чтобы уменьшить количество символов при наборе кода.
- Использование того, что уже есть
- ДИРЕКТИВЫ ПРЕПРОЦЕССОРА #define, #include, #undef, #if, #ifdef, #ifndef, #else, #endif
- ДИРЕКТИВЫ ПРЕПРОЦЕССОРА И УКАЗАНИЯ КОМПИЛЯТОРУ
- ГЛАВА 3. ИСПОЛЬЗОВАНИЕ СТРУКТУР ДАННЫХ
- Восстановление с использованием инструмента gbak
- Типы страниц и их использование
- Использование констант
- Использование переменной окружения ISC_PATH
- Использование сервера Yaffil внутри процесса
- Использование CAST() с типами дата
- Использование типов содержимого и столбцов
- Вызов хранимых процедур InterBase с использованием стандартного синтаксиса ODBC