此部分提到的文章解释了编译器生成的一部分错误消息。
重要
Visual Studio 编译器和生成工具可报告多种类型的错误和警告。 发现错误或警告后,生成工具可做出有关代码意向的假设并尝试继续,因此,可能会同时报告更多问题。 如果工具做出错误假设,则后续错误或警告可能不适于你的项目。 纠正项目中的问题时,请始终先纠正报告的第一个错误或警告,然后在通常情况下重新生成。 一个修复程序可以解决多个后续错误。
若要在 Visual Studio 中获取有关特定诊断消息的帮助内容,请在“输出”窗口中选择该消息,然后按 F1 键。 Visual Studio 会打开该错误的文档页(如果存在)。 还可以使用页面顶部的搜索工具查找有关特定错误或警告的文章。 或者,在本页的目录中按工具和类型浏览错误和警告列表。
注意
并非所有 Visual Studio 错误或警告均有记录。 在许多情况下,诊断消息将提供所有可用信息。 如果登录此页面并认为错误或警告消息需要其他说明,请使用此页面上的反馈按钮告知我们。 如果认为错误或警告是错误的,或者发现了工具集的其他问题,请在开发者社区网站上报告产品问题。 还可以在 IDE 中发送反馈并输入 bug。 在 Visual Studio 中,转到菜单栏并选择 帮助 > 发送反馈 > 报告问题,或使用 帮助 > 发送反馈 > 建议功能提交建议。 创建了一些编译程序错误主题,这些主题不是由编译程序发出的,但现在会重定向到此页面。
可以在 Microsoft Q&A C++ 论坛 中找到有关错误和警告的其他帮助。 或者,在 Visual Studio C++ 开发者社区网站上搜索错误或警告编号。 还可以搜索 Stack Overflow 以查找解决方案。
有关指向其他帮助和社区资源的链接,请参阅 Visual C++ 帮助和社区。
错误消息
| 错误 | 消息 |
|---|---|
| 编译器错误 C3500 | 无效的 ProgID“progid” |
| 编译器错误 C3501 | 没有为 ProgID“progid”注册的 typelib |
| 编译器错误 C3502 | 无法获得 ProgID 'progid' 的 LIBID |
| 编译器错误 C3503 | 原始字符串字面量中不允许使用字符“0xvalue” |
| 编译器错误 C3504 | 无法从字符串 'string' 创建 GUID |
| 编译器错误 C3505 | 无法加载类型库 'library' |
| 编译器错误 C3506 | 没有为 LIBID“library”注册类型库 |
| 编译器错误 C3507 | ProgID 不能有多于 39 个字符的“progid”;也不能包含除“.”外的任何标点;也不能以数字开头 |
| 编译器错误 C3508 | type:不是有效的自动化类型 |
| 编译器错误 C3509 | “type”: 无效的自动化返回类型;参数标记为“retval”时,返回类型必须是“void”、“HRESULT”或“SCODE” |
| 编译器错误 C3510 | 找不到依赖的类型库 library_name |
| 编译器错误 C3511 | identifier:对委托构造函数的调用应当是唯一的成员初始值设定项 |
| 编译器错误 C3512 | 原始字符串字面量的分隔符序列长度不得超过 16 个字符 |
| 编译器错误 C3513 | string:不受支持的原始字符串字面量分隔符字符 |
| 编译器错误 C3514 | '字符'(值):不受支持的原始字符串字面量分隔符字符 |
| 编译器错误 C3515 | 如果类模板部分专用化的参数是一个包扩展,则它应是最后一个参数 |
| 编译器错误 C3516 | 处理原始字符串字面量时发现意外的文件结尾;未找到匹配的定界符序列“string” |
| 编译器错误 C3517 | identifier”别名声明不能具有包含“auto”的类型 |
| 编译器错误 C3518 | 'identifier':在直接列表初始化上下文中,'type' 的类型只能从单个初始化表达式中推导出来 |
| 编译器错误 C3519 | '参数':embedded_idl 属性的参数无效 |
| 编译器错误 C3520 | “identifier”: 必须在此上下文中扩展参数包 |
| 编译器错误 C3521 | “identifier”不是参数包 |
| 编译器错误 C3522 | 'type':无法在此上下文中扩展参数包 |
| 编译器错误 C3523 | “sizeof...”需要一个未扩展的参数包作为其参数 |
| 编译器错误 C3524 | “identifier”:“sizeof”不能应用于参数包。 你是否想使用“sizeof...”? |
| 编译器错误 C3525 | “parameter”: 如果类模板具有模板参数包,则它必须出现在模板参数列表的末尾 |
| 编译器错误 C3526 | ‘...’不能应用于‘this’ |
| 编译器错误 C3527 | 'identifier' 不是 'sizeof...' 的有效操作数。 你是否想使用“sizeof”? |
| 编译器错误 C3528 | “identifier1”: 此包扩展中的元素数与“identifier2”中的元素数不匹配 |
| 编译器错误 C3529 | “parameter”: 模板参数包不能含有默认参数 |
| 编译器错误 C3530 | “type”不能与任何其他类型说明符组合 |
| 编译器错误 C3531 | 类型包含 'type' 的符号 'identifier' 必须具有初始化表达式 |
| 编译器错误 C3532 | 数组的元素类型不能是包含“type”的类型 |
| 编译器错误 C3533 | 参数的类型不能包含“type” |
| 编译器错误 C3534 | 已过时。 |
| 编译器错误 C3535 | 无法从type2推断type1的类型 |
| 编译器错误 C3536 | '标识符': 在初始化之前无法使用 |
| 编译器错误 C3537 | 无法强制转换为包含 type 的类型 |
| 编译器错误 C3538 | 在声明符列表中,'type' 必须始终推导为同一类型 |
| 编译器错误 C3539 | 模板参数不能为包含“type”的类型 |
| 编译器错误 C3540 | 不能将 sizeof 应用于包含“type”的类型 |
| 编译器错误 C3541 | 不能将 typeid 应用于包含“type”的类型 |
| 编译器错误 C3542 | “identifier”: 虚拟成员函数不应具有含“type”的返回类型 |
| 编译器错误 C3543 | “type”: 不包含参数包 |
| 编译器错误 C3544 | “parameter”: 参数包需要一个类型模板参数 |
| 编译器错误 C3545 | “parameter”: 参数包需要一个非类型模板参数 |
| 编译器错误 C3546 | “...”: 没有可扩展的参数包 |
| 编译器错误 C3547 | 无法使用模板参数“parameter”,因为它跟随一个模板参数包,无法从“function”的函数参数推导出来 |
| 编译器错误 C3548 | “identifier”: 无法在此上下文中使用参数包 |
| 编译器错误 C3549 | “value”: 函数参数包不能具有默认参数 |
| 编译器错误 C3550 | 在此上下文中,仅允许使用普通的“decltype(auto)” |
| 编译器错误 C3551 | 如果使用尾随返回类型,则主要返回类型应该是单个类型说明符“auto”(而不是“type”) |
| 编译器错误 C3552 | 应该为“decltype(auto)” |
| 编译器错误 C3553 | decltype 要求的是表达式,而不是类型 |
| 编译器错误 C3554 | “type”不能与任何其他类型说明符组合 |
| 编译器错误 C3555 | `decltype` 的参数不正确 |
| 编译器错误 C3556 | “expression”:'decltype' 的参数不正确 |
| 编译器错误 C3557 | 已过时。 |
| 编译器错误 C3558 | 已过时。 |
| 编译器错误 C3559 | 对“function”的递归调用:在编译位于“function”处的 concurrency::parallel_for_each 的调用图时检测到递归 |
| 编译器错误 C3560 | 'function':编译位于“function”的 concurrency::parallel_for_each 的调用图时,IL 不可用 |
| 编译器错误 C3561 | 在为以下位置的 concurrency::parallel_for_each 编译调用图时,在非 tile-uniform 的控制流中发现了 tile barrier 操作:'function' |
| 编译器错误 C3562 | 内置函数“function”的参数个数不能超过 number 个 |
| 编译器错误 C3563 | 编译位于“function”的 concurrency::parallel_for_each 调用图时,检测到无限循环。 |
| 编译器错误 C3564 | 在为 concurrency::parallel_for_each 编译调用图时,在“function”处读取了未初始化的值 |
| 编译器错误 C3565 | 在编译 concurrency::parallel_for_each 的调用图时,tile_static 内存总量(number 字节)超出了 number 字节的限制 |
| 编译器错误 C3566 | 在编译位于“function”的 concurrency::parallel_for_each 的调用图时,具有副作用的代码块嵌套过深 |
| 编译器错误 C3567 | 在编译位于 'function' 的 concurrency::parallel_for_each 的调用图时,检测到除以零或对零取模。 |
| 编译器错误 C3568 | 编译 concurrency::parallel_for_each 的调用图时,寄存器总数超过了 number 的限制。 请简化程序 |
| 编译器错误 C3569 | 在编译 concurrency::parallel_for_each 的调用图时,在以下位置检测到竞争条件: 'function' |
| 编译器错误 C3570 | 使用 /clr 编译时非法使用 AMP 受限作用域 |
| 编译器错误 C3571 | “type”: 非法的计算域参数;不是类类型 |
| 编译器错误 C3572 | “type”: 非法的计算域参数;缺少公共成员“static const int rank”,或 rank 值为非正数 |
| 编译器错误 C3573 | 传递给 concurrency::parallel_for_each 的 concurrency::graphics::sampler 实例数不能超过 数量 |
| 编译器错误 C3574 | “type”: 非法的平铺范围: 必须是正数,并且 (1) Z <= number;(2) ZYX <= number |
| 编译器错误 C3575 | 'type':非法计算域参数;缺少公有成员:'concurrency::index<number> _map_index(const concurrency::index<number>&) restrict(amp)' |
| 编译器错误 C3576 | 'type': concurrency::details::_Parallel_for_each 参数 #number 的类型不受支持 |
| 编译器错误 C3577 | concurrency::parallel_for_each 内核参数不合法:无法解析对成员函数“void operator()(type) restrict(amp)”的调用 |
| 编译器错误 C3578 | 传递给 concurrency::parallel_for_each 的函数对象大小不能超过 number 字节 |
| 编译器错误 C3579 | 传递给 concurrency::parallel_for_each 的 concurrency::array 和 concurrency::graphics::texture 的只读实例数不能超过 number |
| 编译器错误 C3580 | 传递给 concurrency::parallel_for_each 的 concurrency::array 和 concurrency::graphics::texture 的可写实例数量不能超过 number |
| 编译器错误 C3581 | 'type':AMP 受限代码中出现了不受支持的类型 |
| 编译器错误 C3582 | 已过时。 |
| 编译器错误 C3583 | 'identifier':变量的大小(number 字节)超过了 AMP 受限代码中支持的最大大小(number 字节) |
| 编译器错误 C3584 | 不支持对“identifier”使用 tile_static |
| 编译器错误 C3585 | 'identifier' 在 amp 受限代码中具有不受支持的存储类 |
| 编译器错误 C3586 | 'identifier':在 AMP 受限代码中,不支持使用全局或静态变量 |
| 编译器错误 C3587 | AMP 受限代码中不支持 dynamic_cast |
| 编译器错误 C3588 | 在 AMP 受限代码中,不支持从 'type1' 强制转换为 'type2' |
| 编译器错误 C3589 | 'string':AMP 受限代码中不支持使用字符串字面量 |
| 编译器错误 C3590 | 如果 lambda 表达式受 AMP 限制,则不支持捕获“value” |
| 编译器错误 C3591 | amp 限制代码中不支持 typeid 运算符 |
| 编译器错误 C3592 | AMP 限制代码中不支持内联本机汇编(“__asm”) |
| 编译器错误 C3593 | AMP 受限代码中不支持“goto” |
| 编译器错误 C3594 | amp 限制代码中不支持异常处理(try、catch、throw 等) |
| 编译器错误 C3595 | amp 限制代码中的常量值超出了支持的范围 |
| 编译器错误 C3596 | “parameter”(“type”):lambda 捕获的变量具有 amp 受限代码中不受支持的类型 |
| 编译器错误 C3597 | “parameter”:如果 lambda 受 amp 限制,则不允许按值捕获“identifier” |
| 编译器错误 C3598 | amp 限制代码中不支持标签语句 |
| 编译器错误 C3599 | “operator”:无法在 AMP 受限代码中对指向 bool 的指针执行指针算术 |
| 编译器错误 C3600 | “function”: 编译以下位置的非平铺 concurrency::parallel_for_each 的调用关系图时,检测到使用了 tile_static 内存:“function” |
| 编译器错误 C3601 | 'type':对于 amp 诊断函数 'function',是无效的参数类型 |
| 编译器错误 C3602 | 编译位于 'function' 的 concurrency::parallel_for_each 的调用图时,检测到不受支持的控制流。 |
| 编译器错误 C3603 | “symbol”:尚不支持类型“type” |
| 编译器错误 C3604 | “identifier”:只能在 GC 堆上创建托管对象 |
| 编译器错误 C3605 | 在以下位置为 concurrency::parallel_for_each 编译调用图时,采样器总数(已捕获 number 个,已预定义 number 个)超过 number:'function' |
| 编译器错误 C3606 | 无法将内部函数“function”映射到 HLSL |
| 编译器错误 C3607 | 结构化绑定声明不能有约束 |
| 编译器错误 C3609 | “identifier”:“密封/最终”函数必须是虚拟函数 |
| 编译器错误 C3610 | “identifier”: 在调用“method”方法之前必须将值类型“装箱” |
| 编译器错误 C3611 | 'identifier':密封的函数不能具有纯说明符 |
| 编译器错误 C3612 | 'identifier':密封类不能包含任何纯虚函数 |
| 编译器错误 C3613 | “->”后缺少返回类型(假定为“int”) |
| 编译器错误 C3614 | 同一类中包大小的不同值;先前的值为“value”,新值为“value” |
| 编译器错误 C3615 | constexpr 函数“function”不能生成常数表达式 |
| 编译器错误 C3616 | 已过时。 |
| 编译器错误 C3617 | 结构化绑定的初始值设定项必须是数组或非联合类类型;不允许使用“type_name”类型 |
| 编译器错误 C3618 | “声明”:标记为 DllImport 的方法无法定义 |
| 编译器错误 C3619 | 不能在托管/WinRT 类型中声明模板 |
| 编译器错误 C3620 | 'type':不允许在 WinRT 类型上设置对齐 |
| 编译器错误 C3621 | 'type':WinRT 类型只允许默认打包值(number) |
| 编译器错误 C3622 | 'type': 声明为 'keyword' 的类无法实例化 |
| 编译器错误 C3623 | 'identifier':托管/WinRT 类型不支持位域 |
| 编译器错误 C3624 | 'type':使用此类型需要引用程序集/模块“identifier” |
| 编译器错误 C3625 | “class”: 本机类型不能从托管/ WinRT 类型“type”派生 |
| 编译器错误 C3626 | “identifier”: “keyword”关键字只能用于 COM 接口、指向委托的成员函数和数据成员 |
| 编译器错误 C3627 | 只有值类型才能被装箱 |
| 编译器错误 C3628 | 'class':托管/WinRT 类仅支持公有继承 |
| 编译器错误 C3629 | “token”: 捕获默认值只能出现在 lambda 捕获列表的开头 |
| 编译器错误 C3630 | 处理令牌“token”时出错(在 Visual Studio 2022 中已过时。) |
| 编译器错误 C3631 | 'event': 无法重载托管/WinRT 事件 |
| 编译器错误 C3632 | “event”: 用于 construct 的事件样式非法 |
| 编译器错误 C3633 | 不能将“标识符”定义为托管“类”的成员 |
| 编译器错误 C3634 | 'member':无法定义托管/WinRT 类的抽象方法 |
| 编译器错误 C3635 | “identifier”:无法应用于托管/WinRT 类(请改用“identifier”) |
| 编译器错误 C3636 | “identifier”:不能应用于此类型 |
| 编译器错误 C3637 | 'function':友元函数定义不能是函数模板/泛型函数的特化 |
| 编译器错误 C3638 | 'operator':标准装箱和取消装箱转换运算符不能重新定义 |
| 编译器错误 C3639 | 作为默认参数一部分的 lambda 只能使用 init-capture |
| 编译器错误 C3640 | “member”:局部类中被引用的成员函数或虚成员函数必须已定义 |
| 编译器错误 C3641 | 'function':为使用 /clr:pure 或 /clr:safe 编译的函数指定的调用约定 'convention' 无效 |
| 编译器错误 C3642 | “function”: 不能从本机代码中调用包含 __clrcall 调用约定的函数 |
| 编译器错误 C3643 | “%$S”: 无法分解“%$S”和“%$S”中具有非静态数据成员的类型 |
| 编译器错误 C3644 | '函数': 无法将该函数编译为托管代码 |
| 编译器错误 C3645 | “函数”: 不能对编译为本机代码的函数使用 __clrcall |
| 编译器错误 C3646 | 'identifier': 未知重写说明符 |
| 编译器错误 C3647 | 已过时。 |
| 编译器错误 C3648 | 托管类型不支持此显式重写语法 |
| 编译器错误 C3649 | 不允许对 /ZW 使用此显式重写语法 |
| 编译器错误 C3650 | “member”: 不能用作显式重写,必须是基类的虚拟成员函数 |
| 编译器错误 C3651 | “member”:不能用作显式重写项,必须是某个基类的成员 |
| 编译器错误 C3652 | 'member': 显式重写的函数必须是虚函数 |
| 编译器错误 C3653 | 'identifier':不能用作具名重写:找不到被重写的函数;是否忘记了使用 a:: 运算符显式命名该函数? |
| 编译器错误 C3654 | token:显式覆盖中存在语法错误 |
| 编译器错误 C3655 | “member”: 函数已经显式替代 |
| 编译器错误 C3656 | “keyword”: 重写说明符不能重复 |
| 编译器错误 C3657 | 析构函数/终结器不能进行显式重写,也不能被显式重写 |
| 编译器错误 C3658 | 已过时。 |
| 编译器错误 C3659 | “member”: 不支持重写说明符“keyword” |
| 编译器错误 C3660 | 'member1':隐藏了继承的成员 'member2' |
| 编译器错误 C3661 | 显式重写列表中未找到任何可重写的方法 |
| 编译器错误 C3662 | “member”: 重写说明符“keyword”只允许在托管/ WinRT 类的成员函数上使用 |
| 编译器错误 C3663 | 已过时。 |
| 编译器错误 C3664 | “member”: 不能用作显式重写,必须具有“公共”或“受保护的”可访问性 |
| 编译器错误 C3665 | 'member':不允许在析构函数/终结器上使用 override 说明符 'keyword' |
| 编译器错误 C3666 | constructor:构造函数中不允许使用 override 说明符 keyword |
| 编译器错误 C3667 | “attribute”: 属性不支持包扩展 |
| 编译器错误 C3668 | 'member':带有重写说明符“override”的方法没有重写任何基类方法 |
| 编译器错误 C3669 | “member”:静态成员函数或构造函数上不允许使用“override”说明符 |
| 编译器错误 C3670 | 'member':无法重写不可访问的基类方法 'member' |
| 编译器错误 C3671 | “member”:函数未重写“member” |
| 编译器错误 C3672 | 伪析构函数表达式只能用作函数调用的一部分 |
| 编译器错误 C3673 | 'class':类没有复制构造函数 |
| 编译器错误 C3674 | 未找到标准库模块 'module' |
| 编译器错误 C3675 | 'function':由于 'property' 已定义,因此被保留 |
| 编译器错误 C3676 | “class”: ref 类和基类具有不兼容的属性“[attribute]” |
| 编译器错误 C3677 | “operator”后的字符串字面量不能带有编码前缀 |
| 编译器错误 C3678 | “operator”后的字符串字面量必须是空字符串“""""” |
| 编译器错误 C3679 | “operator """"”后应有一个文本后缀标识符 |
| 编译器错误 C3680 | 不能将用户定义的字符串字面量与不匹配的文本后缀标识符连接 |
| 编译器错误 C3681 | “fallthrough”: 属性可能仅出现在封闭的 switch 语句中 |
| 编译器错误 C3682 | “operator identifier”:字面量运算符/字面量运算符模板不能声明为具有“C”链接 |
| 编译器错误 C3683 | 不能使用相同的文本后缀标识符定义原始文本运算符和文本运算符模板 |
| 编译器错误 C3684 | “operator identifier”:字面量运算符的声明具有无效的参数列表 |
| 编译器错误 C3685 | “operator identifier”:字面量运算符模板不能有函数参数 |
| 编译器错误 C3686 | “operator identifier”:字面量运算符模板必须恰好具有一个模板参数,且该参数必须是参数包 |
| 编译器错误 C3687 | “operator identifier”:字面量运算符模板必须具有“char”类型的非类型模板参数 |
| 编译器错误 C3688 | 无效的字面量后缀“suffix”;未找到字面量运算符或字面量运算符模板“operator identifier” |
| 编译器错误 C3689 | “operator identifier”:字面量运算符/字面量运算符模板必须位于全局或命名空间作用域中 |
| 编译器错误 C3690 | 应该为字符串字面量,但找到的是用户定义的字符串字面量 |
| 编译器错误 C3691 | 文本前缀“prefix”无效 |
| 编译器错误 C3692 | 伪析构函数表达式中不能使用非标量类型“type_name” |
| 编译器错误 C3693 | “identifier”:无法通过引用捕获位域 |
| 编译器错误 C3694 | 结构化绑定声明不能包含除“static”、“thread_local”、“auto”和 cv 限定符以外的任何说明符 |
| 编译器错误 C3695 | “%$S”: 无法分解包含匿名联合或结构的类型 |
| 编译器错误 C3696 | 'keyword':无法对“%”使用此限定符 |
| 编译器错误 C3697 | “keyword”: 无法在“^”上使用此限定符 |
| 编译器错误 C3698 | 'type':不能将此类型用作 'operator' 的参数 |
| 编译器错误 C3699 | 'operator':无法对类型 'type' 使用此间接引用 |
| 编译器错误 C3700 | 文件名缺少结束符“%c” |
| 编译器错误 C3701 | 'function':事件源不包含任何事件 |
| 编译器错误 C3702 | COM 事件需要使用 ATL |
| 编译器错误 C3703 | “event_handler”: 事件处理程序方法必须具有与源“event”相同的存储类 |
| 编译器错误 C3704 | “member”: vararg 方法无法激发事件 |
| 编译器错误 C3705 | “函数”:找不到事件接口 |
| 编译器错误 C3706 | “函数”:必须是用于触发 COM 事件的 COM 接口 |
| 编译器错误 C3707 | “成员”:dispinterface 方法必须具有 dispid |
| 编译器错误 C3708 | 'function':“keyword”使用不当;必须是兼容的事件源的成员 |
| 编译器错误 C3709 | “function”: 在 __hook/__unhook 中指定事件的语法不正确 |
| 编译器错误 C3710 | “function”: 在 __hook/__unhook 中指定事件处理程序的语法不正确 |
| 编译器错误 C3711 | 'event':非托管事件源方法必须返回 void 或整型 |
| 编译器错误 C3712 | “event_handler”: 事件处理程序方法必须返回与源“event”相同的类型 |
| 编译器错误 C3713 | “event_handler”: 事件处理程序方法必须具有与源“event”相同的函数参数 |
| 编译器错误 C3714 | “event_handler”: 事件处理程序方法必须具有与源“event”相同的调用约定 |
| 编译器错误 C3715 | '指针':必须是指向 '类型' 的指针 |
| 编译器错误 C3716 | “%$L”: 不允许生成具有模块构造的预编译标头 |
| 编译器错误 C3717 | “member”: 不能定义激发事件的方法 |
| 编译器错误 C3718 | 只能在接收方类的成员函数上下文中调用“__keyword” |
| 编译器错误 C3719 | “member”: 基于接口的事件源只能用于 COM 事件 |
| 编译器错误 C3720 | “type”:只能在双接口或 dispinterface 上实现 IDispatch |
| 编译器错误 C3721 | '签名': 事件的签名不兼容 |
| 编译器错误 C3722 | 不允许泛型事件 |
| 编译器错误 C3723 | 'function':无法解析事件 |
| 编译器错误 C3724 | 必须添加 #include <windows.h> 才能对事件使用多线程处理 |
| 编译器错误 C3725 | 已过时。 |
| 编译器错误 C3726 | 无法将 SecureHotPatch 转换应用于“%s”。 解释 |
| 编译器错误 C3727 | 'event':托管事件必须是成员函数,或是指向委托的指针类型的数据成员 |
| 编译器错误 C3728 | event:事件没有触发方法 |
| 编译器错误 C3729 | 属性说明符不能同时包含 using 命名空间前缀和范围属性 |
| 编译器错误 C3730 | 已过时。 |
| 编译器错误 C3731 | 事件“event”和处理程序“event_handler”不兼容;事件源和事件处理程序必须有相同的事件类型 |
| 编译器错误 C3732 | “接口”:触发 COM 事件的自定义接口不能继承自 IDispatch |
| 编译器错误 C3733 | “event”: 指定 COM 事件的语法不正确;是否忘记了“__interface”? |
| 编译器错误 C3734 | 'class':托管类或 WinRT 类不能是协类 |
| 编译器错误 C3735 | 模板或泛型已重新定义 |
| 编译器错误 C3736 | “member”: 必须是方法,在托管事件中也可以是数据成员 |
| 编译器错误 C3737 | 'identifier':委托不能具有显式调用约定 |
| 编译器错误 C3738 | “convention”: 显式实例化的调用约定必须与被实例化的模板的调用约定匹配 |
| 编译器错误 C3739 | class:仅在 event_receiver 的 'layout_dependent' 参数为 true 时才支持此语法 |
| 编译器错误 C3740 | “template”: 模板不能发出或接收事件 |
| 编译器错误 C3741 | “class”:当 event_receiver 的“layout_dependent”参数为 true 时,必须是协类 |
| 编译器错误 C3742 | “token1”:“attribute”的属性参数中的标记顺序不均衡,应为“token2” |
| 编译器错误 C3743 | 只有当 event_receiver 的“layout_dependent”参数为 true 时,才能挂钩/解除挂钩整个接口 |
| 编译器错误 C3744 | __unhook 必须至少有 3 个用于托管事件的参数 |
| 编译器错误 C3745 | “函数”:只有事件才能被“引发” |
| 编译器错误 C3746 | 标准属性“identifier”可最多在属性列表中出现一次 |
| 编译器错误 C3747 | 缺少默认模板/泛型参数:参数 number |
| 编译器错误 C3748 | 'interface':非托管接口可能不会触发事件 |
| 编译器错误 C3749 | “attribute”: 自定义属性不能在函数内部使用 |
| 编译器错误 C3750 | “token”:属性说明符中出现意外的标记 |
| 编译器错误 C3751 | 'identifier':属性列表中出现意外标识符 |
| 编译器错误 C3752 | “attribute”: 无法对属性进行分类;不应在此上下文中使用“keyword” |
| 编译器错误 C3753 | 不允许使用泛型属性 |
| 编译器错误 C3754 | 委托构造函数:无法在类型“type”的实例上调用成员函数“member” |
| 编译器错误 C3755 | “identifier”:可能未定义委托 |
| 编译器错误 C3756 | 已过时。 |
| 编译器错误 C3757 | 'type':'constexpr' 函数不允许使用该类型(在 Visual Studio 2022 中已弃用。) |
| 编译器错误 C3758 | 'member': 虚函数不能声明为 'constexpr' |
| 编译器错误 C3759 | “member”: 非文本类型的成员函数不能声明为“constexpr”(在 Visual Studio 2022 中已过时。) |
| 编译器错误 C3760 | 请使用 __property 关键字在托管/WinRT '类' 中声明属性 |
| 编译器错误 C3761 | “function”:“retval”只能出现在函数的最后一个参数上 |
| 编译器错误 C3762 | 无法处理属性“attribute” |
| 编译器错误 C3763 | 'type': 'retval' 和 'out' 只能用于数据指针类型 |
| 编译器错误 C3764 | “member”: 无法重写基类方法“member” |
| 编译器错误 C3765 | “event”: 无法在标记为 event_receiver 的类/结构“type”中定义事件 |
| 编译器错误 C3766 | “type”必须为接口方法“function”提供实现 |
| 编译器错误 C3767 | '函数': 候选函数不可访问 |
| 编译器错误 C3768 | 在纯托管代码中,不能获取虚函数 vararg 的地址 |
| 编译器错误 C3769 | “identifier”:嵌套类不能与其直接外围类同名 |
| 编译器错误 C3770 | “type”: 不是有效基类 |
| 编译器错误 C3771 | 'identifier': 未在最近的命名空间作用域中找到友元声明 |
| 编译器错误 C3772 | 'identifier':友元模板声明无效 |
| 编译器错误 C3773 | 在C++version中,在此上下文中使用“feature”属于非规范扩展 |
| 编译器错误 C3774 | 找不到 'scope::identifier': 请包含 header_name 头文件 |
| 编译器错误 C3775 | “function”的返回类型不应为“type” |
| 编译器错误 C3776 | 无法在具有非 void 最终返回类型的协同例程中返回 void 类型的表达式 |
| 编译器错误 C3777 | 'function':协程不能使用可变参数列表 |
| 编译器错误 C3778 | alloca: 不可用于协同例程 |
| 编译器错误 C3779 | “function”:返回“auto”的函数在定义之前不能使用 |
| 编译器错误 C3780 | “function”:返回“auto”的转换函数不能在定义之前使用 |
| 编译器错误 C3781 | 'keyword':不能在类型为 'type' 的协程中使用。 关联的 promise_type 中必须存在 keyword 或 keyword |
| 编译器错误 C3782 | type:协程的 promise 对象不能同时包含 keyword 和 keyword |
| 编译器错误 C3783 | 'identifier': 不能是协程 |
| 编译器错误 C3784 | 关键字 不能在此上下文中显示 |
| 编译器错误 C3785 | “std::integer_sequence”的第一个模板参数必须是整型 |
| 编译器错误 C3786 | “std::make_integer_sequence”的第二个模板参数必须为大于或等于零的整数常量 |
| 编译器错误 C3787 | 无法推导此协程的返回类型 |
| 编译器错误 C3788 | 此函数不能是协程:‘type_name’不是类 |
| 编译器错误 C3789 | 此函数不能是协程:'%$T' 未声明成员 '%$I()' |
| 编译器错误 C3790 | 捕获“*this”需要“%1$M” |
| 编译器错误 C3791 | 当默认捕获模式为通过复制 (=) 捕获时,无法显式捕获“this” |
| 编译器错误 C3792 | 无法识别的哈希算法“%$I” |
| 编译器错误 C3793 | 算法“%$I”的哈希值长度必须刚好为 %u 个字符 |
| 编译器错误 C3794 | #pragma file_hash 中指定的文件“%$S”也属于当前编译单元 |
| 编译器错误 C3795 | 文件“%$S”的多个冲突的哈希值 |
| 编译器错误 C3796 | “operator %$I”: 既不是字符串字面量运算符模板,也不是数字文本运算符模板 |
| 编译器错误 C3797 | 'keyword':事件声明不能带有 override 说明符(应将其置于事件的 add/remove/raise 方法上) |
| 编译器错误 C3798 | “keyword”: 属性声明不能具有重写说明符(而应将该说明符放在属性的 get/set 方法上) |
| 编译器错误 C3799 | 索引属性不能有空的参数列表 |
| 编译器错误 C3800 | ‘declaration’:不能混合属性和事件 |
| 编译器错误 C3801 | “attribute”: 属性可能没有参数子句 |
| 编译器错误 C3802 | 已过时。 |
| 编译器错误 C3803 | “property”:该属性的类型与其某个访问器“accessor”不兼容 |
| 编译器错误 C3804 | 'member':属性的访问器方法必须要么全部为静态,要么全部为非静态 |
| 编译器错误 C3805 | 'token':非预期的标记,应为以下之一:'}' 或 ',' |
| 编译器错误 C3806 | 'token':出现意外标记,应为“{”或“成员初始值设定项”之一 |
| 编译器错误 C3807 | 'type': 具有 ComImport 属性的类不能派生自 'type',仅允许实现接口 |
| 编译器错误 C3808 | type:具有 ComImport 特性的类不能定义成员 member,仅允许使用 abstract 或 dllimport 函数 |
| 编译器错误 C3809 | 'type':托管/WinRT 类型不能具有任何友元函数、类或接口 |
| 编译器错误 C3810 | “%1$S”: 无法分解具有不确定基类“type_name”的类型 |
| 编译器错误 C3811 | 已过时。 |
| 编译器错误 C3812 | “__property”必须是属性声明中的第一个标记 |
| 编译器错误 C3813 | 属性声明只能出现在托管/WinRT 类型的定义中 |
| 编译器错误 C3814 | 已过时。 |
| 编译器错误 C3815 | 方法“member”的返回类型必须与 setter 方法的最后一个参数的类型匹配 |
| 编译器错误 C3816 | “类/结构 member”先前已使用不同的托管/WinRT 修饰符进行声明或定义 |
| 编译器错误 C3817 | “declaration”: 属性只能应用于函数 |
| 编译器错误 C3818 | 数组属性声明“property”不应重载索引属性“property” |
| 编译器错误 C3819 | 已过时。 |
| 编译器错误 C3820 | “标识符”:初始化表达式必须受管理 |
| 编译器错误 C3821 | 'function':无法在非托管函数中使用托管类型或函数 |
| 编译器错误 C3822 | 已过时。 |
| 编译器错误 C3823 | 已过时。 |
| 编译器错误 C3824 | “type”: 此类型不能出现在此上下文中(函数参数、返回类型或静态成员) |
| 编译器错误 C3825 | “type”:托管/WinRT 类只能支持托管/WinRT 事件 |
| 编译器错误 C3826 | 已过时。 |
| 编译器错误 C3827 | 标准属性“deprecated”可以不带参数,也可以带一个用于说明原因的字符串字面量 |
| 编译器错误 C3828 | 无法为“type”类型的“keyword”表达式指定位置参数 |
| 编译器错误 C3829 | 特性 [[属性名称]] 只能应用于函数声明 |
| 编译器错误 C3830 | “type1”: 无法从“type2”继承,值类型只能从接口类继承 |
| 编译器错误 C3831 | “identifier”: “type”不能具有固定成员数据或返回固定指针的成员函数 |
| 编译器错误 C3832 | “typelib”: 类型库看上去似乎是为 32 位指针生成的;请更改“ptrsize”限定符 |
| 编译器错误 C3833 | type:identifier 的目标类型无效 |
| 编译器错误 C3834 | 非法将显式转换应用于固定用指针;应改用固定的局部变量 |
| 编译器错误 C3835 | 已过时。 |
| 编译器错误 C3836 | 静态构造函数不允许有成员初始值设定项列表 |
| 编译器错误 C3837 | 不可在此上下文中使用属性 |
| 编译器错误 C3838 | 无法从“type”继承 |
| 编译器错误 C3839 | 无法更改托管/WinRT 类型中的对齐方式 |
| 编译器错误 C3840 | 已过时。 |
| 编译器错误 C3841 | 已过时。 |
| 编译器错误 C3842 | “identifier”:托管/WinRT 类型的成员函数不支持使用“const”和“volatile”限定符 |
| 编译器错误 C3843 | '标识符':不支持在托管/WinRT 类型的成员函数上使用引用限定符 |
| 编译器错误 C3844 | “identifier”: 无法从“source”导入符号,因为当前范围内已存在“identifier” |
| 编译器错误 C3845 | 已过时。 |
| 编译器错误 C3846 | “identifier”: 无法从“source”导入符号: 因为“identifier”已从另一个程序集“assembly”导入 |
| 编译器错误 C3847 | 显式实例化中的 noexcept 说明符必须与被实例化模板的 noexcept 说明符一致 |
| 编译器错误 C3848 | 具有类型“type”的表达式会丢失一些 const-volatile 限定符以调用“identifier” |
| 编译器错误 C3849 | 对类型为“type”的表达式进行函数风格调用将导致全部 number 个可用运算符重载的 const 和/或 volatile 限定符丢失 |
| 编译器错误 C3850 | 'token':通用字符名指定了无效字符 |
| 编译器错误 C3851 | “token”: 通用字符名称不能指定基本字符集中的字符 |
| 编译器错误 C3852 | member 的类型为“type”:聚合初始化无法初始化该成员 |
| 编译器错误 C3853 | “=”: 通过函数引用重新初始化引用或进行赋值是非法的 |
| 编译器错误 C3854 | “=”左侧的表达式求值结果为函数。 无法给函数赋值(函数不是左值) |
| 编译器错误 C3855 | “function”: 模板/泛型参数“identifier”与声明不兼容 |
| 编译器错误 C3856 | “class”: 类不是类模板/泛型 |
| 编译器错误 C3857 | “template”: 不允许使用多个模板/泛型参数列表 |
| 编译器错误 C3858 | 'identifier': 无法在当前作用域中重新声明 |
| 编译器错误 C3859 | 未能创建 PCH 的虚拟内存 |
| 编译器错误 C3860 | 模板/泛型参数列表(在类模板/泛型名称后面)必须按模板/泛型参数列表中使用的顺序列出参数 |
| 编译器错误 C3861 | “identifier”:找不到标识符 |
| 编译器错误 C3862 | 'function':无法使用 /clr:pure 或 /clr:safe 编译非托管函数 |
| 编译器错误 C3863 | 数组类型“type”不可赋值 |
| 编译器错误 C3864 | “context”:requires 子句与该声明不兼容 |
| 编译器错误 C3865 | 'keyword':只能用于原生成员函数 |
| 编译器错误 C3866 | 析构函数/终结器调用中缺少参数列表 |
| 编译器错误 C3867 | 'function':非标准语法;请使用“&”以创建成员指针 |
| 编译器错误 C3868 | type:泛型参数“parameter”的约束与声明中的约束不同 |
| 编译器错误 C3869 | gcnew 约束缺少空参数列表“()” |
| 编译器错误 C3870 | “parameter”: “__declspec(specifier)”只能应用于积分类型的参数 |
| 编译器错误 C3871 | '参数': '__declspec(guard(overflow))' 仅支持用于函数的前 64 个参数 |
| 编译器错误 C3872 | '0xvalue':此字符不允许在标识符中使用 |
| 编译器错误 C3873 | “0xvalue”: 不允许将此字符作为标识符的第一个字符 |
| 编译器错误 C3874 | “identifier”的返回类型应为“type1”而不是“type2” |
| 编译器错误 C3875 | 调用非静态成员函数时缺少参数列表 |
| 编译器错误 C3876 | 十六进制浮点文本需要一个指数 |
| 编译器错误 C3877 | TypeForwardedTo 属性的类型参数无效 |
| 编译器错误 C3878 | 语法错误:在“context”后出现意外的标记“name” |
| 编译器错误 C3879 | “member”:不能作为 initonly 数据成员 |
| 编译器错误 C3880 | 'member':不能是字面量数据成员 |
| 编译器错误 C3881 | 只能从直接基继承构造函数 |
| 编译器错误 C3882 | “class”: 构造函数已继承自“class” |
| 编译器错误 C3883 | 'member':initonly 静态数据成员必须初始化 |
| 编译器错误 C3884 | “type”: 无法对未知大小的数组进行值初始化 |
| 编译器错误 C3885 | 'type':无法用空初始化器列表初始化未知大小的数组 |
| 编译器错误 C3886 | 'member':必须初始化字面量数据成员 |
| 编译器错误 C3887 | 'member':字面量数据成员的初始化项必须是常量表达式 |
| 编译器错误 C3888 | “member”: C++/CLI 不支持与此 literal 数据成员关联的常数表达式 |
| 编译器错误 C3889 | 对类类型“type”的对象的调用:找不到匹配的调用运算符 |
| 编译器错误 C3890 | 'member':不能获取字面量数据成员的地址 |
| 编译器错误 C3891 | 'member':字面量数据成员不能作为左值使用 |
| 编译器错误 C3892 | 'variable':不能对 const 变量赋值 |
| 编译器错误 C3893 | “member”:只能在类“class”的实例构造函数中使用 initonly 数据成员的左值用法 |
| 编译器错误 C3894 | “member”:只有在类“class”的构造函数中,才允许将 initonly 静态数据成员用作左值 |
| 编译器错误 C3895 | 'member':type 数据成员不能为“volatile” |
| 编译器错误 C3896 | “member”: 不正确的初始化表达式:此字面量数据成员只能使用“nullptr”进行初始化 |
| 编译器错误 C3897 | 已过时。 |
| 编译器错误 C3898 | “member”:类型数据成员只能属于托管类型 |
| 编译器错误 C3899 | “member”: 不允许在类“class”的某个并行区域中直接使用 initonly 数据成员的左值 |
| 编译器错误 C3900 | 'member':在当前作用域中不允许使用 |
| 编译器错误 C3901 | “函数”:必须具有返回类型“类型” |
| 编译器错误 C3902 | “function”: 最后一个参数的类型必须是“type” |
| 编译器错误 C3903 | “属性”:没有 setter 或 getter 方法 |
| 编译器错误 C3904 | “属性”:必须指定 个数 个参数 |
| 编译器错误 C3905 | 不支持对内建类型“type”进行非对齐访问 |
| 编译器错误 C3906 | 对于 vararg 或无原型函数,内建类型 'type' 不是受支持的返回类型或参数类型 |
| 编译器错误 C3907 | 无法跳转到位于不同”if constexpr”语句或子语句中的标签 |
| 编译器错误 C3908 | 访问级别比“identifier”更宽松 |
| 编译器错误 C3909 | 托管/WinRT 事件声明必须位于托管/WinRT 类型中 |
| 编译器错误 C3910 | 'event':必须定义成员 'member' |
| 编译器错误 C3911 | 'member': 函数必须具有类型 'type' |
| 编译器错误 C3912 | 'event':事件的类型必须是委托类型 |
| 编译器错误 C3913 | 必须为默认属性编制索引 |
| 编译器错误 C3914 | 默认属性不能是静态的 |
| 编译器错误 C3915 | “identifier”没有默认索引属性(类索引器) |
| 编译器错误 C3916 | 索引为 %d 的函数参数与 %d 请求的对齐方式不相符 |
| 编译器错误 C3917 | “token”: construct 声明样式已过时(你是否想改用“[' ']”?) |
| 编译器错误 C3918 | 该用法要求“identifier”是数据成员 |
| 编译器错误 C3919 | “函数”:函数必须具有“返回类型 (类型)”类型 |
| 编译器错误 C3920 | “operator”:无法定义后缀递增/递减 CLR/WinRT 运算符。调用后缀 CLR/WinRT 运算符时,将调用相应的前缀 CLR/WinRT 运算符(op_Increment/op_Decrement),但采用后缀语义 |
| 编译器错误 C3921 | 已过时。 |
| 编译器错误 C3922 | “name”: 参数必须是常量表达式 |
| 编译器错误 C3923 | “member”: 不允许在托管/WinRT 类的成员函数中使用局部类、结构或联合定义 |
| 编译器错误 C3924 | 委托构造函数调用“constructor”的参数 #number 中出错: |
| 编译器错误 C3925 | 在“directive_name”指令后应有一个循环(for、while 或 do) |
| 编译器错误 C3926 | 'parallel' 指令中的常量无效 |
| 编译器错误 C3927 | '->': 非函数声明符后不允许使用尾随返回类型 |
| 编译器错误 C3928 | “->”:带圆括号的声明符后面不允许使用尾随返回类型 |
| 编译器错误 C3929 | 指定了“collapse(count)”,但在“#pragma omp for”之后只发现了 value 个循环 |
| 编译器错误 C3930 | “function”: 没有任何重载函数具有与环境上下文“context”兼容的限制说明符 |
| 编译器错误 C3931 | 'type':无法调用其限定说明符与外围上下文不兼容的函数 |
| 编译器错误 C3932 | 已过时。 |
| 编译器错误 C3933 | class:析构函数的限制说明符必须涵盖所有构造函数限制的并集 |
| 编译器错误 C3934 | 使用任意“main”格式的函数不能包含除 restrict(cpu) 以外的限制说明符 |
| 编译器错误 C3935 | 标识符:重新定义;重叠的限制说明符 |
| 编译器错误 C3936 | “标识符”:无法识别的限制说明符 |
| 编译器错误 C3937 | 不允许使用空限制说明符 |
| 编译器错误 C3938 | “identifier”: 外部“C”函数不支持多个限制说明符 |
| 编译器错误 C3939 | “identifier”: 不允许使用成员函数指针、函数指针和引用带“amp”限制说明符的函数 |
| 编译器错误 C3940 | “identifier”: 找不到标识符 - 编译器和库的版本可能不匹配。 请确保 vccorlib.h/.lib、vccorlib120.dll 和 c1xx.dll 匹配 |
| 编译器错误 C3941 | “condition”: 需要“/clr”命令行选项 |
| 编译器错误 C3942 | '#pragma omp atomic capture':位于 '=' 右侧的表达式必须是标量类型的左值表达式 |
| 编译器错误 C3943 | “”#pragma omp atomic:运算符“operator”重载;仅允许内置运算符 |
| 编译器错误 C3944 | '#pragma omp atomic':要求“operator”的左操作数为左值表达式 |
| 编译器错误 C3945 | “type”:无法引发或捕获未派生自 Platform::Exception 的 winrt 对象 |
| 编译器错误 C3946 | 'type':typeid 不能用于此类型 |
| 编译器错误 C3947 | `typeid`:typeid 不能用于包扩展 |
| 编译器错误 C3948 | “keyword”: 包扩展不能出现在此上下文中 |
| 编译器错误 C3949 | 包扩展“...”不能出现在带圆括号的抽象声明符中 |
| 编译器错误 C3950 | 已过时。 |
| 编译器错误 C3951 | 不能在投影 WinRT 类型“type”中使用成员指针。 改用委托。 |
| 编译器错误 C3952 | 'type':WinRT 不支持 'in/out' 数组。 请在公共 API 上对“in”使用“const Array<T>^”,对“out”使用“WriteOnlyArray<T>”或“Array<T>^*” |
| 编译器错误 C3953 | 无法在 WinRT 模块中使用托管类 'type'。 (在 Visual Studio 2022 中已过时。) |
| 编译器错误 C3954 | “type”: 从 WinRT 类型的发布方法中返回的数组必须使用“Array<T>^”的形式 |
| 编译器错误 C3955 | 'type':公共构造函数不能包含“out”参数或“WriteOnlyArray<T>” |
| 编译器错误 C3956 | “type”: 类型标记为供“type”独占使用,不能用作“derived_type”的基础 |
| 编译器错误 C3957 | 'type':不能对 WinRT 类型使用 'new';请改用 'ref new' |
| 编译器错误 C3958 | 'type':不能对 WinRT 类型使用 'gcnew';请改用 'ref new' |
| 编译器错误 C3959 | “ref new”只能用于创建 WinRT 类型的对象 |
| 编译器错误 C3960 | 已过时。 |
| 编译器错误 C3961 | 不支持静态构造函数 |
| 编译器错误 C3962 | 不支持泛型类 |
| 编译器错误 C3963 | 不支持多维数组 |
| 编译器错误 C3964 | 不支持交错数组 |
| 编译器错误 C3965 | 不支持参数数组 |
| 编译器错误 C3966 | “function”: 不支持泛型函数 |
| 编译器错误 C3967 | 从模块“module”导入“identifier”时出错 |
| 编译器错误 C3968 | 标记“token”不可用作模块名称分隔符;请改用句号(“.”) |
| 编译器错误 C3969 | 不一致的模块名称:“module1”和“module1” |
| 编译器错误 C3970 | “identifier”: “keyword”仅可应用于全局范围或命名空间范围内的“ref class”或“ref struct” |
| 编译器错误 C3971 | 'type':部分定义不能出现在完整定义之后 |
| 编译器错误 C3972 | “type”:“partial”只能应用于类声明或定义 |
| 编译器错误 C3973 | 未实现的功能: %$M |
| 编译器错误 C3974 | “%$S”: OpenMP“for”语句中的索引变量必须包含整型 |
| 编译器错误 C3975 | “类/结构 identifier”之前已使用不同的修饰符声明或定义 |
| 编译器错误 C3976 | 只有将“identifier1”声明为“public”才能使用“identifier2” |
| 编译器错误 C3977 | 该用法需要引用定义了identifier的程序集 |
| 编译器错误 C3978 | “identifier”: 静态属性不允许作为 WinRT 接口或值类型的成员 |
| 编译器错误 C3979 | “type”: 使用属性“attribute”而不是“value” |
| 编译器错误 C3980 | 无法将 'type' 写入元数据 |
| 编译器错误 C3981 | “type”: 值类型不能具有任何静态数据成员“identifier” |
| 编译器错误 C3982 | “type”: 值类型不能具有任何非公共数据成员“identifier” |
| 编译器错误 C3983 | “type”: 值类型不能具有任何公共非数据成员“identifier” |
| 编译器错误 C3984 | “type”: 非值类型不能具有任何公共数据成员“identifier” |
| 编译器错误 C3985 | 'identifier': 公共成员的签名包含私有类型 'member' |
| 编译器错误 C3986 | “identifier”:公共成员签名中包含本机类型“member” |
| 编译器错误 C3987 | “identifier”:公共成员的签名中包含本机类型“type” |
| 编译器错误 C3988 | 'type':本地类型不能为公共 |
| 编译器错误 C3989 | “type”: 嵌套类型不能是公共的 |
| 编译器错误 C3990 | “type”: 属性“attribute”不能是私有或嵌套的 |
| 编译器错误 C3991 | “type”: 无法实现非公共或嵌套的接口“interface” |
| 编译器错误 C3992 | 'identifier':公共成员的签名包含无效类型“type” |
| 编译器错误 C3993 | “type”: 值类型必须至少包含一个公共字段 |
| 编译器错误 C3994 | 'type':值类型不能实现接口,也不能拥有虚函数 |
| 编译器错误 C3995 | “type”: 值类型不能具有任何事件成员“identifier” |
| 编译器错误 C3996 | 已过时。 |
| 编译器错误 C3997 | Warbird: 消息 |
| 编译器错误 C3998 | “c++version”: 不受支持的 C++ 版本;默认为“c++version” |
| 编译器错误 C3999 | 应至少有一个参数,但属性[[属性]]实际为零个 |