.NET 枚举允许在最后一个字段中使用逗号

2023-12-09

为什么这个 .NET 枚举允许在最后一个字段中包含逗号?
这有什么特殊的意义吗?

[FlagsAttribute]
public enum DependencyPropertyOptions : byte
{
           Default = 1,
           ReadOnly = 2,
           Optional = 4,
           DelegateProperty = 32,
           Metadata = 8,
           NonSerialized = 16,
}

它没有什么特殊含义,只是编译器的工作方式,主要是因为这个原因:

[FlagsAttribute]
public enum DependencyPropertyOptions : byte
{
           Default = 1,
           ReadOnly = 2,
           Optional = 4,
           DelegateProperty = 32,
           Metadata = 8,
           NonSerialized = 16,
           //EnumPropertyIWantToCommentOutEasily = 32
}

通过评论请求:此信息直接来自C# 规范(第 355 页/第 17.7 节)

与标准 C++ 一样,C# 允许在数组初始化程序末尾使用尾随逗号。此语法提供了在此类列表中添加或删除成员的灵活性,并简化了此类列表的机器生成。

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

.NET 枚举允许在最后一个字段中使用逗号 的相关文章

  • C++中类成员函数相互调用有什么好处?

    我是 C 新手 我发现下面的编程风格对我来说很有趣 我在这里写了一个简化版本 include
  • CMake(Ninja 后端)使用 /MT 编译

    我有一个类似的问题CMake 使用 MT 而不是 MD 进行编译 https stackoverflow com questions 14172856 cmake compile with mt instead of md但有一些差异 我正
  • 从结构调用 C++ 成员函数指针

    我找到了有关调用 C 成员函数指针和调用结构中的指针的信息 但我需要调用结构内部存在的成员函数指针 但我无法获得正确的语法 我在类 MyClass 的方法中有以下代码片段 void MyClass run struct int MyClas
  • 如何以编程方式删除受信任的根证书颁发机构中的证书?

    我需要能够从组织中的每台电脑中删除特定的证书 是的 我可以逐个座位 但我要到周四才能完成 而且我没有人力逐个座位 是否有使用 C 的编程方式来执行此操作 我认为你不需要编写任何 C 看看certmgr exe del http msdn m
  • 如何在 C# 中以编程方式将行添加到 DataGrid?

    正如标题所述 我正在尝试使用 C 以编程方式将行添加到 DataGrid 但我似乎无法使其工作 这是我到目前为止所拥有的 I have a DataGrid declared as dg in the XAML foreach string
  • 大量互斥体对性能的影响

    假设我有一个包含 1 000 000 个元素的数组 以及多个工作线程 每个线程都操作该数组中的数据 工作线程可能会使用新数据更新已填充的元素 但每个操作仅限于单个数组元素 并且独立于任何其他元素的值 使用单个互斥锁来保护整个数组显然会导致高
  • 自己绘制的WPF自定义滑块

    这是我关于堆栈溢出的第一个问题 所以不要踢它 我在尝试创建 Mac 风格的滑块控件时遇到问题 我已经发现这个解决方案 http www codeproject com KB miscctrl MAC Slider aspx我已经在我的解决方
  • ASP.NET - Crystal Report Viewer 打印按钮在 ASP.NET 中不起作用

    我正在使用 Visual Studio 2008 但我遇到了水晶报告问题 当我单击打印按钮时 它会将我带到弹出窗口 但未找到页面 弹出的网址是 http localhost aspnet client System Web 2 0 5072
  • 使用 STL 流时如何格式化我自己的对象?

    我想将我自己的对象输出到 STL 流 但具有自定义格式 我想出了这样的东西 但由于我之前从未使用过 locale 和 imbue 所以我不知道这是否有意义以及如何实现 MyFacet 和operator 所以我的问题是 这是否有意义以及如何
  • C# 可以为控制台应用程序部分类“程序”类吗?

    我想知道是否可以将为任何控制台应用程序创建的默认 程序 类更改为部分类 我想这样做是因为我想要更好的组织 而不是将所有方法都放在按区域分类的 1 个文件中 对我来说 将某些方法类别放在单独的文件中会更有意义 我对分部类的理解是 它是多个文件
  • 将 AutomationID 与 ListView 结合使用

    我正在尝试将 AutomationId 附加到列表视图中的项目 理想情况下 将项目名称绑定到显示的项目
  • 如何在Windows窗体中打开进程

    我想在我的 Windows 窗体应用程序中打开进程 例如 我希望当用户按下 Windows 窗体容器之一中的按钮时 mstsc exe 将打开 如果他按下按钮 它将在另一个容器上打开 IE DllImport user32 dll SetL
  • fgets溢出后如何清除输入缓冲区?

    当输入字符串超出其预定义限制时 我遇到了 fgets 的小问题 以下面的例子为例 for index 0 index lt max index printf Enter the d string index 1 if fgets input
  • 在 Visual Studio 2012 Express 中设置 C++ 调试环境

    我需要调试的应用程序需要设置环境变量 这在 Visual Studio 2012 中似乎非常复杂 我想做类似的事情 set path c foo c bar c windows c program files application set
  • c++ - <未解析的重载函数类型>

    在我的班级里叫Mat 我想要一个将另一个函数作为参数的函数 现在我有下面 4 个函数 但是在调用 print 时出现错误 第二行给了我一个错误 但我不明白为什么 因为第一行有效 唯一的区别是功能f不是班级成员Mat but f2是 失败的是
  • 为什么存在系统调用

    我一直在阅读有关系统调用及其在 Linux 中如何工作的内容 我还有更多的阅读要做 但我读过的一件事都没有回答 那就是 为什么我们需要系统调用 我知道系统调用是用户空间程序要求内核执行某些操作的请求 但我的问题基本上是 为什么用户空间程序本
  • 尝试后终于没有被调用

    由于某种原因 在我的控制台应用程序中 我无法运行我的finally 块 我编写这段代码是为了测试finally块是如何工作的 所以它非常简单 static void Main int i 0 try int j 1 i Generate a
  • C++ 中的析构函数

    我的 AB h 文件中有一个构造函数 class AB private int i public AB i 0 constructor AB i 0 destructor virtual void methodA unsigned int
  • 如何配置 qt Creator 以显示 C++ 代码而不是反汇编程序?

    昨天我做了很多事情 比如更新 GCC Clang 和重新安装 Qt Creator 今天 在逐步调试我的代码时 调试器显示的是反汇编代码 而不是我编写的 C 代码 紧迫F10 or F11 调试器正在进入汇编代码而不是 cpp nor h我
  • 如何从Python枚举类中获取所有值?

    我正在使用 Enum4 库创建一个枚举类 如下所示 class Color Enum RED 1 BLUE 2 我要打印 1 2 作为某处的列表 我怎样才能实现这个目标 您可以执行以下操作 e value for e in Color

随机推荐

  • 使用 python 提取 pdf 表格中包含的文本的最佳方法是什么?

    我正在构建一个程序 从 pdf 中提取文本 将其放入结构化格式 然后将其发送到数据库 我有大约 1 400 个单独的 pdf 文件 它们都遵循类似的格式 但文档总结的措辞和计划设计中的细微差别使其变得棘手 我在 python 中尝试过几个不
  • 我什么时候应该关闭DatabaseHelper?

    参考this链接 如果只有一个连接 什么时候是关闭连接的好时机 我有一项服务始终在后台运行 什么时候是打电话的好时机close 功能 有什么建议么 你实际上不必打电话close 例如 如果您实现内容提供商 则没有机会调用close 我们被告
  • 禁用表单提交,直到选中(两个)复选框

    我们有一个表单 在提交表单之前 我们有两个复选框 privacy 条款和条件 我想做的是 在验证复选框时遇到问题 禁用提交按钮 直到选中两个复选框为止 这些的 html 是
  • NumPy for windows python 2.7 [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我找不到适用于 windows python 2 7 的 NumPy 尽管我找到了它的
  • 将区域设置设置为系统默认 UTF-8

    当在 rApache 中运行 R 时 语言环境是从 Apache Web 服务器继承的 因此Sys getlocale 总是等于 C 我希望使用我的网络应用程序UTF8 所以我使用 Sys setlocale LC ALL en US UT
  • do 块中的返回类型

    我试图理解 Haskell 中的 Monad 在我无数次的代码实验中我遇到了这个事情 f2 do return da 事实上 它不想在编译时出现关于类型的巨大错误 我认为唯一重要的部分是 No instance for Monad m0 a
  • 如何通过将列的类别分成集合来过滤数据框?

    我有一个数据框 Prop ID Unit ID Prop Usage Unit Usage 1 1 RESIDENTIAL RESIDENTIAL 1 2 RESIDENTIAL COMMERCIAL 1 3 RESIDENTIAL IND
  • 我可以在对象原型(方法)中定义属性吗?

    问题第 1 部分 我创建了一个包含属性的对象构造函数 但我想知道是否可以在其中一个方法中定义该对象的另一个属性 例如 var Player function p1 this property1 p1 this property2 0 那么
  • 是否可以在不同列的 CSS 网格的内部间隙中绘制垂直分隔符?

    我想要一个由可变长度元素组成的响应式网格 网格应填充包含元素的可用宽度 列数根据容器的宽度而变化 使用 CSS 网格可以直接实现这一点 但是 我不知道如何在列之间添加垂直边框 即仅在内部列间隙中 下面的简单演示成功地在三列的情况下实现了垂直
  • 四舍五入最接近的 0.5

    我想以这种方式四舍五入 13 1 round to 13 5 13 2 round to 13 5 13 3 round to 13 5 13 4 round to 13 5 13 5 13 5 13 6 round to 14 0 13
  • 使用 JavaScript 验证特殊字符

    特殊字符 lt gt and 不允许出现在文本框中 我需要进行验证检查以限制提交时的这些字符以及空检查 我在函数中编写了整个验证代码 并在单击提交按钮时调用它 但单击时无法识别该函数 请帮我写一些JavaScript代码来实现这个功能 一个
  • Vue Router、GitHub Pages 和自定义域无法使用路由链接

    我的域名 myname com 我的 GitHub 存储库 myname 我的 GitHub 名称 myname 底层 GH 页面 URL myname github io myname 我的问题 我使用 History Vue Route
  • Android ListView 编程选择/突出显示

    我有一个简单的列表视图和列表适配器设置 如下所示 listAdapter new ArrayAdapter
  • 为什么这个任务挂起?

    TestMethod public void Y int i 0 new Task gt i Wait Assert AreEqual 1 i 上例中的任务为何永远等待 我该怎么办Wait 对于任务 所以它不会挂起 你没有start the
  • Linux 上的 pthread 条件变量,奇怪的行为

    我正在 Linux 上同步读取器和写入器进程 我有 0 个或多个进程 读者 需要休眠 直到它们被唤醒 读取资源 返回休眠状态等等 请注意 我不知道随时有多少个读者进程启动 我有一个进程 编写器 它在资源上写入 唤醒读者并执行其业务 直到另一
  • 如何强制水平方向?

    我想做以下事情 ViewControllerA 不应进入水平方向 ViewControllerA 推送 ViewControllerB ViewControllerB 应该进入水平方向 不知道要设置什么才能实现这一点 In each UIV
  • X11中的截图

    使用 Xlib 库可以使用哪些函数来截取 X11 桌面的屏幕截图 我更喜欢一种比获取单个像素更有效的方法 Thanks X11中截屏的 标准工具是使用 xwd root gt myscreen xwd 然后 转换为 pnm xwd2pnm
  • 正则表达式 字符串内只有一个点,不在开头或结尾

    我怎样才能写一个正则表达式 in javascript只允许用户这样写 abc def abc def or abc 所以基本上匹配只包含字母的模式 仅限小写字母 a z and a or 但不匹配 or 在字符串的开头或结尾或多次 只有一
  • 渲染设计编辑密码表单

    我试图在另一个视图中呈现设计编辑密码表单 因为我不想重复编辑密码逻辑 我尝试了以下操作 生成设计视图后 渲染上的许多其他变化似乎都给了我同样的错误 foo foo 中的 ActionView MissingTemplate 缺少部分设备 密
  • .NET 枚举允许在最后一个字段中使用逗号

    为什么这个 NET 枚举允许在最后一个字段中包含逗号 这有什么特殊的意义吗 FlagsAttribute public enum DependencyPropertyOptions byte Default 1 ReadOnly 2 Opt