这个宏有什么作用? __success(返回 >= 0) 长

2023-12-23

在Windows头文件WinNT.h中,HRESULT定义如下:

typedef __success(return >= 0) long HRESULT;

做了一些研究,我了解到“__success”宏是微软源代码注释语言的一部分SAL并定义在sal.h。但我一生都无法弄清楚它的作用或它是如何做到的。


MSDN 上的这篇博文 https://web.archive.org/web/20150701133014/http://blogs.msdn.com/b/staticdrivertools/archive/2008/11/06/annotating-for-success.aspx准确地解释了什么__success意思是:如果函数返回一个值,则表明该函数成功HRESULT值 >= 0。

注释只是描述一段代码的一种方式 - 它们本身不“做”任何事情,但可以让外部工具验证此类注释的语义。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这个宏有什么作用? __success(返回 >= 0) 长 的相关文章

  • 如何从 Java 中的常量向注释提供枚举值

    我无法使用从常量获取的枚举作为注释中的参数 我收到此编译错误 注释属性 attribute 的值必须是枚举常量表达式 这是枚举代码的简化版本 public enum MyEnum APPLE ORANGE 对于注释 Retention Re
  • 如何中止使用 wininet 发送的请求?

    我有一个 MFC 应用程序 用于向相应的服务器发送 post 请求 这是一个http请求 用于上传文件 但有要求中止发送的请求 就像用户正在发送一个大文件一样 用户应该能够在请求完成之前取消请求 我正在使用 wininet api Http
  • 删除子类中的注释?

    我有一个子类 需要一个注释 在删除的父类中声明 做这个的最好方式是什么 public class Parent MyAnnoation String foobar public class Child extends Parent here
  • C++ 成员函数中的“if (!this)”有多糟糕?

    如果我遇到旧代码if this return 在应用程序中 这种风险有多严重 它是一个危险的定时炸弹 需要立即在应用程序范围内进行搜索和销毁工作 还是更像是一种可以悄悄留在原处的代码气味 我不打算writing当然 执行此操作的代码 相反
  • 为什么 _Printf_format_string_ 宏不产生任何警告?

    在下面的代码片段中 格式说明符的错误用法MyFormat 根据 SAL 规范 调用应该产生警告 并且对于相同的调用printf 我确实会收到所有这些警告 但即使使用 我的代码也会默默编译 W4 我究竟做错了什么 我正在使用 MSVC 201
  • 获取模板lambda参数的返回值,如何简化代码?

    这是我的技巧 template
  • 使用 boost 和 Visual C++ 2005 解压缩 zip 文件?

    boost中有没有可以用来解压zip文件的库 boost iostreams http www boost org doc libs 1 41 0 libs iostreams doc index html has a gzip http
  • MinGW64 和 MSVC 上的函数解析结果不同

    template
  • Visual Studio 2017 中的“onecore”文件夹

    在Visual Studio 2017 RTM VC Tools MSVC 14 10 25017 lib文件夹中 有一个名为 onecore 的文件夹 里面有x64 x86和arm的文件夹 每个文件夹都包含一些VC Tools中已经存在的
  • 如何在 Scala 用户定义注释中使用命名参数?

    在下面的代码中 我能够获得第一个注释对象 Publishable 但不能获得第二个 第二个使用命名参数 它转换为 x 2 x 3 x 1 作为 AST 中的参数 我该如何正确地做到这一点 class Publishable val path
  • @MappedSuperclass 和 @OneToMany

    我需要关联 OneToMany从乡村到超一流Place MappedSuperclass 它可以是双向的 我需要类似的东西 OneToAny MappedSuperclass public class Place private Strin
  • 如何在 Hibernate 中持久化非实体子类中的实体

    我试图将一个实体扩展为一个非实体 用于填充超类的字段 问题是 当我尝试保存它时 Hibernate 会抛出 MappingException 这是因为即使我将 ReportParser 转换为 Report 运行时实例仍然是一个 Repor
  • Spring MVC 控制器中的硬编码@RequestMapping URL

    我正在研究 Spring 3 并在一个简单的 Web 应用程序中使用它 现在我正在使用注释实现 Spring MVC 控制器 我想知道 有没有使用的最佳实践 RequestMapping注解 我的意思是 我发现通常这个注释中映射的 URL
  • 为什么不允许接口作为注释成员?

    考虑这段代码 Retention RetentionPolicy RUNTIME Target ElementType METHOD public interface Bar Foo foo default FooImpl FooConst
  • 新显卡上的 nvoglv32.dll 中的绘制调用崩溃

    几天前 由于一些硬件更改 我设置了计算机并安装了新的 Windows 8 副本 其中 我将显卡从 Radeon HD 7870 更改为 Nvidia GTX 660 再次设置 Visual Studio 11 后 我从 Github 下载了
  • std::deque 的内存开销到底是怎么回事?

    我正在研究一种使用外部排序算法std queue并且必须仔细限制其内存使用 我注意到在合并阶段 使用了几个std queues 固定长度 我的内存使用量增加到我预期的大约 2 5 倍 自从std queue默认情况下使用std deque作
  • 如何使用 microsoft Visual C++ 编写调用 JNI 的代码 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我如何编写C代码microsoft
  • Hibernate注解放置问题

    我有一个我认为很简单的问题 我见过两种方式的例子 问题是 为什么我不能将注释放在字段上 让我举一个例子 Entity Table name widget public class Widget private Integer id Id G
  • 从挂钩的 exe 获取详细的故障转储

    我正在尝试查找我的程序与游戏挂钩的问题 这是 VC 基本上我启动该程序 然后使用 SDL 连接到它 当我从 VS2010 运行代码时 一切正常 但是当我尝试从命令提示符运行时 我的程序可以启动游戏 但之后游戏立即崩溃 我正在查看 Windo
  • 在 VS 2013 中添加新项目时,“已安装”下没有任何内容?

    我正在尝试在 Visual Studio 2013 中添加一个新的 C C 文件项 但是 当我单击 添加新项目 时 已安装 下绝对没有任何内容 我在找Visual C gt C 安装下 可能出了什么问题 有什么我应该安装的吗 在 在线 下

随机推荐

  • 如何在 LINQ 中对单个联接中的多个字段进行联接

    我需要执行一个 LINQ2DataSet 查询 该查询对多个字段进行联接 如 var result from x in entity join y in entity2 on x field1 y field1 and x field2 y
  • 精确单词搜索中允许出现一个字母错误

    我们正在实施一个搜索应用程序 我们通过以下 sql 查询实现了精确单词搜索 SELECT FROM jreviews content WHERE jr produits REGEXP lt ryan gt 现在效果很好 我们在某些字段中还有
  • 在 perl 中解码 UTF-8 JSON 的问题

    UTF 8字符在使用JSON库处理时会被破坏 也许这类似于在perl中解码unicode JSON的问题 https stackoverflow com questions 5536796 problem with decoding uni
  • 如何在 WordPress 上跨主机名并行下载?

    在 GTmetrix 上检查我的 WordPress 网站时 我收到此消息 跨主机名并行下载 gt https gtmetrix com https gtmetrix com 这是详细信息 gt https gtmetrix com par
  • Lookup Class 在 LINQ 中,底层数据结构是什么?

    LINQ 中 Lookup 类的底层数据结构是什么 它是哈希表吗 它是一个哈希表 其中每个存储桶都包含一个链表 并且每个项目都是所有项目的链表的一部分 换句话说 哈希表中的每一项都包含一个key 的列表elements 指向哈希桶中下一项的
  • VS2012 的数据源工具箱不显示我的实体模型

    从数据源工具箱本身添加实体模型或通过添加它 gt 添加 gt 新项目 后 它不会显示在数据源工具箱中 因此我无法获得那么简单的拖放功能 如果我添加一个数据集 它可以工作 但这是一种较旧的技术 不是吗 我当前项目中的所有内容都是实体模型并更改
  • 加密:使用初始化向量还是密钥?

    我正在使用 PHPmcrypt图书馆和AES 256 rijndael 算法 需要密钥 初始化向量才能运行 我的逻辑头脑并不真正同意这一点 难道只有一把钥匙就够了吗 理论场景 如果我将加密的敏感数据存储在数据库中 只有所有者才能解密 那么使
  • 如何在 RxJs 5 中将主题转换为可观察对象

    我们如何在 RxJs 5 中将主题转换为可观察对象 例如 当我们想要公开主题进行订阅但又不想放弃对调用的控制时 此功能非常有用next 并倾向于将新值的发布保密 文档 参见here https github com Reactive Ext
  • oracle查询出错单行子查询返回多行

    知道这里有什么问题吗 如何将以下 Sybase 查询转换为 Oracle Sybase查询 Update student s1 set s1 delay select date1 date2 from cource c where c ID
  • C# WPF 在 Stackpanel 中编程创建的 DataTemplate Dockpanel 没有效果

    我正在尝试为列表框动态创建数据模板 这是针对自定义用户控件的 这个用户控件有一个依赖属性它接受任何类型的IEnumerable 这工作正常 但输出总是 适当的价值 适当的价值 如果对象包含 2 个属性 但我希望这些属性并排排列 喜欢 对象1
  • 增加 R for Mac 中的内存限制

    我一直在查看网上发布的有关如何增加 R 内存限制的解决方案 但这些解决方案似乎只适用于windows https stackoverflow com questions 1395229 increasing or decreasing th
  • Codeigniter:CSS 文件中的 base_url() 不起作用

    base url 不适用于 CSS 文件 这是我的 php 这是我的 css style css body background 356aa0 url
  • WindowsFormsHost 中的 MouseWheel 事件

    我有一个 WPF 应用程序 它使用 WindowsFormsHost 控件来托管 Windows Forms 控件 我尝试实现 MouseWheel 事件 但似乎 MouseWheel 事件从未触发 这个问题有解决方法吗 解决方法是使用事件
  • 极值的 logit 和逆 logit 函数

    我需要 logit 和逆 logit 函数 以便logit inv logit n n 我使用 numpy 这是我所拥有的 import numpy as np def logit p return np log p np log 1 p
  • CKEditor 去除内联属性

    我使用 CKEditor 一段时间了 效果很好 我几乎已经摆脱了我遇到的任何问题 但这个问题我似乎无法弄清楚 例如 当我向元素添加内联属性时style color ff0 on a p p 当我从所见即所得视图切换到源视图时 它们的标签被删
  • 使用 wget 和 Windows Scheduler 运行 php 脚本

    在我的笔记本电脑上 我安装了一个网络服务器并编写了一个脚本 通过访问脚本http localhost test search php在任何浏览器中都可以使其正常运行 它搜索 下载和存储某些推文 我现在想让脚本每20分钟自动运行一次 所以我下
  • 使用 java lambda 调用 kotlin 函数时,Kotlin 无法访问 kotlin.jvm.functions.Function1

    我正在尝试从 Java 调用以下 Kotlin 函数 override fun First list LinqList
  • 在离散 x 轴上绘制 geom_vline

    我无法在绘图的 x 轴上以离散 因子 水平绘制垂直线 在这个解决方案中 它似乎有效在ggplot2中绘制具有因子水平的垂直线 https stackoverflow com questions 50534862 drawing vertic
  • OpenApiGenerator - 如何跳过由于版本更改而生成文件更改

    我正在使用typescript rxjs发电机 每当我生成 API 客户端的新版本时 所有文件都会发生更改 其中 99 是因为版本更改 The version of the OpenAPI document 1 47 0 rc 20 真正的
  • 这个宏有什么作用? __success(返回 >= 0) 长

    在Windows头文件WinNT h中 HRESULT定义如下 typedef success return gt 0 long HRESULT 做了一些研究 我了解到 success 宏是微软源代码注释语言的一部分SAL并定义在sal h