动态装饰对象在c#
发布时间:2020-12-15 17:59:39 所属栏目:百科 来源:网络整理
导读:是否可以容易地和动态地装饰一个对象? 例如,让我说我有一个List PointF.这个列表实际上是正弦函数的图.我想通过这些观点,并为每个PointF添加一个标志是否是一个高峰. 但是我不想创建一个新的扩展SpecialPointF或其他具有布尔属性的东西. 判断我所有你想要懒
是否可以容易地和动态地装饰一个对象?
例如,让我说我有一个List< PointF>.这个列表实际上是正弦函数的图.我想通过这些观点,并为每个PointF添加一个标志是否是一个高峰. 但是我不想创建一个新的扩展SpecialPointF或其他具有布尔属性的东西. 判断我所有你想要懒惰,但懒惰是如何真棒的想法(也是坏主意) 编辑:我会接受拳击解决方案以及你可以想出的任何有趣的黑客.没有什么真正阻止我得出.我只想知道是否有更有趣的方式. 解决方法
如果有一种方式可以计算出每点,则不需要添加标志,可以使用
extension方法,而无需扩展它.
像PointF.isPeak(); 它的工作原理如下: public static class Extensions { public static bool isPeak (this PointF p) { do crazy math... return result; } } 而且,您可以在PointF类中进行计算. 顺便说一句,公共静态类必须在最外层的范围内,不能嵌套. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |