В C++ можно использовать пространство имен, чтобы отдельные группы, работающие в одной и той же кодовой базе, могли непреднамеренно создавать одноименные функции и тем самым создавать конфликт. Мой вопрос, прежде чем идея пространства имен выходит, как один может эмулировать пространство имен в С.Как можно эмулировать пространство имен в C?
12
A
ответ
18
Называя вещи по-разному, например:
void namespace_group_function();
gtk+ является ярким примером этого традиционного стиля:
GtkWidget* gtk_window_new(GtkWindowType type);
2
Для не экспортируемых символов вы помещаете каждый модуль в отдельный файл.
Для экспортированных символов вы обычно применяете префикс. Две или три буквы являются общими.
6
Используйте общий префикс для имен всех ваших общедоступных символов, поэтому foo::bar
будет foo_bar
. бросать префикс на все имена символов, по сути, это пространство имен. (а также разрешение символов, используемых без префикса, для объявлений с префиксом, что очень полезно)
Смежные вопросы
- 1. Можно ли использовать относительное пространство имен C#?
- 2. C++ Когда можно расширить пространство имен `std`?
- 3. Пространство имен в C#
- 4. Пространство имен в C++
- 5. C# Пространство имен
- 6. C# пространство имен данных
- 7. C# System.Type - пространство имен?
- 8. Пространство имен в C заголовках
- 9. используя пространство имен в C#
- 10. Пространство имен XSD в пространстве имен C#
- 11. В C++ можно переименовать/псевдоним не-пространство имен, неклассовое имя?
- 12. Пространство имен C++ EOF
- 13. пространство имен наследование
- 14. Можно ли эмулировать методы объекта в C?
- 15. Документация на C# - можно добавить родительские узлы в пространство имен?
- 16. Можно ли фильтровать пространство имен в XPath?
- 17. Как работает пространство имен в C#?
- 18. Как добавить новое пространство имен в C#
- 19. Как пространство имен в C# с псевдонимом
- 20. Как получить пространство имен в строку C#
- 21. Дайте пространство имен существующей библиотеке в C++
- 22. Можно ли изменить псевдоним на пространство имен C#?
- 23. Пространство имен C/C++ в заголовке проблемы
- 24. Добавить объекты в пространство имен C++
- 25. Определить пространство имен файла C#
- 26. секция C-пространство имен в весеннем НТД
- 27. Пространство имен C# и WPF
- 28. Можно скрыть пространство имен MediaWiki из категории?
- 29. Единство C# глобальное пространство имен
- 30. Пространство имен C++ не объявлено
Он работает для выделения независимых групп, но не поддерживает зависящий от аргумента поиск и псевдонимы пространства имен. –
Мне очень нравится тот факт, что префикс библиотеки для классов - CamelCased, в то время как он подчеркивает функции. Это делает вещи красивыми и последовательными. –