【发布时间】:2017-08-28 02:37:45
【问题描述】:
我知道在 C# 中可以使用 using 关键字来定义别名。
例如
using ResponseKey = System.ValueTuple<System.Guid, string, string>;
但是,是否可以使用值元组的新语法定义一个?
using ResponseKey = (Guid venueId, string contentId, string answer);
此语法似乎不起作用。应该吗?
【问题讨论】:
-
我不知道答案,但看起来很像“我可以在模块级别使用var来定义变量吗?”
-
如果它不编译意味着它不应该工作
-
我不知道答案,但看起来最好为此目的创建一个类或结构。元组很好,但请不要过度使用它。
-
有趣的评论@YeldarKurmangaliyev。使用它的原因是不必实现所有可比较的接口来用作对象的简单键。是的,是我偷懒了,不过也是把语言功能发挥的淋漓尽致。
-
@NickRandell - 大多数时候你为人们(其他开发人员)编写软件 - 他们会阅读你的代码。拥有具有描述性名称的类和属性 - 是更友好/有效的方法。大多数程序员花在阅读代码(自己的和其他人的)描述性名称和数据结构上的时间会节省他们的时间