c++ - 这个表达是什么意思? SP_DEVINFO_DATA 开发数据 = {sizeof(SP_DEVINFO_DATA)};

标签 c++

我看到c++代码是这样写的,可以用MSVC编译通过。

SP_DEVINFO_DATA devdata = {sizeof(SP_DEVINFO_DATA)};

这个表达式是什么意思?我以前从未见过这样的代码。

有人可以帮忙吗?

最佳答案

这叫做 aggregate initialization .在这种情况下,它仅显式初始化 devdata 的第一个成员(其余的值已初始化,感谢 WhozCraig 的评论并让我添加它),大概是一个包含数量的字段字节大小,到结构的大小。


来自SP_DEVINFO_DATA引用页第一个成员是一个名为 cbSizeDWORD,它是:

The size, in bytes, of the SP_DEVINFO_DATA structure.

关于c++ - 这个表达是什么意思? SP_DEVINFO_DATA 开发数据 = {sizeof(SP_DEVINFO_DATA)};,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15155332/

相关文章:

c++ - segmentation violation Segmentation fault c++ 分子数组中的值

c++ - 访问堆栈变量比取消引用指针慢?

c++ - 无法从字符串转换为 Uuid

c++ - 可以在引号中发表评论吗?

c++ - 如何在从模板类继承时应用 move 语义

C++ - 清理整数输入

c++ - 如何实现无限多维数组?

c++ - 我如何判断一个元组在 C++ 中是否为空

c++ - 带模板的条件返回类型

c++ - 用.txt文件编译多个C++文件?