加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

动态装饰对象在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类中进行计算.

顺便说一句,公共静态类必须在最外层的范围内,不能嵌套.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读