Некоторые из этих определений препроцессора находятся в функции WinMain и других функциях библиотеки Windows. Какова их цель? Как они работают? и является ли хорошей практикой записывать их в свои реализации или вызовы функций?
Мои первоначальные исследования показывают, что они просто настроены эквивалентно:
#define __in
#define __out
#define __in_opt
Это означает, что они заменяются на ничего на проходе препроцессора . Это просто метод документации без какой-либо функциональности?
Если так, то я вижу преимущество в документировании кода в такой строке. С чем-то вроде doxygen вам нужно дважды записать имена параметров. Так что теоретически это может помочь уменьшить дублирование и поддерживать согласованность ...
У меня нет теории о том, как __ allowed ()
должен работать.