【发布时间】:2011-10-29 00:44:46
【问题描述】:
我想扩展 .NET 的内置 Color 结构以添加新的运算符,例如 + 或 -。
我会像这样使用它们:
Color c1 = Color.FromName("Red");
Color c2 = Color.FromName("Blue");
Color result = c2 - c1;
有可能吗?如果是,怎么做?
【问题讨论】:
-
我不确定这是否可以做到,但我很好奇'red - blue'的结果会是什么?
-
@n8wrl:确实很奇怪,但我希望
-可以从其他颜色中删除该颜色的任何 RGB 值。 -
@n8wrl 不管紫色的反面是什么,大概:-)
-
它将对常规的 24 位颜色进行逐个减法,例如减去红色、绿色和蓝色。这只是一个简单的演示示例,显然在此示例中结果将是红色(因为我会将负值转换为 0),但我不会使用它来“从蓝色中减去红色”:)
-
好的,大家别忘了
Color,以免造成进一步的混乱。毕竟这是一个 C# 问题 :) 判断是否可以使用运算符扩展现有结构..
标签: c# .net struct operator-keyword