


C# 中没有问题。在 VB.NET 中就不能编译,错误是
Operator '+' is not defined for types 'System.Drawing.Point' and 'System.Drawing.Size'.
其实看一下 Point 的il 代码,已经有了一个加法的重载























无奈只好改成:



查了一下,msdn mag 最新的一期提到了这个问题,其实原因很简单,vb.net 的compiler 还没有100% 对运算符重载支持的足够好。
原文地址:http://www.msdn.microsoft.com/msdnmag/issues/04/12/AdvancedBasics/default.aspx