其中一些预处理器定义在 WinMain 函数和其他 windows 库函数中。他们的目的是什么?它们是如何工作的?将它们写入您的实现或函数调用是一种好习惯吗?
我最初的研究表明,它们只是简单地设置为:
#define __in
#define __out
#define __in_opt
意味着它们在预处理器过程中被 nothing 替换。它们只是一种文档方法,没有任何功能吗?
如果是这样,我可以看到像这样记录代码的好处。使用 doxygen 之类的东西,您需要写出两次参数名称。所以这在理论上可以帮助减少重复并保持一致性......
我不知道 __allowed()
应该如何工作。
最佳答案
它们是源代码注释语言中的 SAL 注释。微软工具依赖于它。 MSDN 库文章 is here .一个很好的例子是Code Analysis .另一个完全不相关但受这些注释支持的工具是 Pinvoke Interop Assistant。
关于c++ - __in _out __in_opt _ allowed() 的目的是什么,它们是如何工作的?我应该在自己的代码中使用类似的结构吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4239809/