VB.net给Color类添加运算符怎么做?

如题,要**让Color类支持“-”这个运算符**,返回一个Integer,有没有办法做到?
如写好后 Color.White - Color.Yellow 应该就可以返回一个Integer
具体的运算步骤不用写,只求框架代码qwq

首先要注意,Color类可以用一个Integer表示,但是两个Integer相减极端的情况下可能出现下溢。而且考虑到其实一个颜色是4个字节的分量,从颜色本身的角度来说,对每个分量计算才有意义,直接Integer相减没有事实上的意义,你得到的值就算不下溢也可能是一种很奇怪的颜色。

其次,VB不支持对现有的类的运算符重载。也就是说,Color不是你定义的,所以你不能直接重载它的减运算符。但是你可以写一个函数来做。

如果非要写,可以这么写

Imports System
Imports System.Drawing
Public Class Test
    Public Shared Sub Main()
        Dim c1 As Color = Color.Red
        Dim c2 As Color = Color.Blue
        Dim i As Integer = c1.ToArgb() - c2.ToArgb()
        Console.WriteLine(i)
    End Sub
End Class

16711425

http://ideone.com/Xy1UuD