gpt4 book ai didi

c++ - 正确的 VARIANT 初始化

转载 作者:行者123 更新时间:2023-11-30 04:04:59 25 4
gpt4 key购买 nike

我正在处理一个包含一些用 C++ 编写的 COM/自动化内容的项目。我知道 MFC/ATL 有一个漂亮的 CComVariant class它负责 VARIANT 初始化,但仅从“纯”VARIANT 的角度来看,我知道建议使用以下方法初始化它:

VARIANT v;
::VariantInit(&v);

但我想知道从阅读描述到 VariantInit ,我可以改为这样做吗?

VARIANT v = {0};

最佳答案

正如您所发现的,VariantInit 只是将 vt 成员设置为 VT_EMPTY。它不会将 union 的内容置零,因为 VT_EMPTY 被解释为没有数据。您可以使用任何其他方法将 vt 设置为 VT_EMPTY 并且没问题,但是标准正确的方法是使用 VariantInit

关于c++ - 正确的 VARIANT 初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23526653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com