Когда я пишу функцию в C, которая также может оказаться полезной в контексте C++, должен ли я использовать макрос bool или нет? Может ли это привести к проблемам совместимости, на C и C++ оба определяют тип bool (ну, C befines _Bool, но вы знаете, что я имею в виду :-))?bool и совместимость с C/C++
1
A
ответ
4
Почему бы не использовать int
? Это всегда должным образом поддерживается.
Единственная причина для использования bool
- если вы точно знали, что ваш код будет использоваться только в современных средах C и C++. Но если бы у него был какой-то шанс, ему пришлось бы запускать какой-то старый устаревший компилятор, возможно, для неясного встроенного процессора, кто-то должен был бы вставлять макросы и массировать код.
0
Если вы очень заинтересованы в сохранении памяти, вы можете использовать символ вместо этого.