类似触发器的布尔值

时间:2015-03-05 23:00:50

标签: c#

我想创建自定义布尔结构,其作用类似于触发器,详细说明如果我将其设置为true,只有在第一次“检查”后它才会变为真。

我刚刚快速创建了一个类来模拟,我希望实现什么,以便更好地理解。

有可能吗?谢谢。

public class Trigger
{
    private bool trigger;
    private bool trigger_ctrl;

    public void Set(bool value)
    {
        this.trigger = value;
    }

    public void Reset()
    {
        this.trigger_ctrl = false;
    }

    public bool IsTriggered()
    {
        if (!this.trigger)
        {
            return false;
        }

        if (this.trigger_ctrl)
        {
            return false;
        }
        this.trigger_ctrl = true;
        return true;
    }
}

1 个答案:

答案 0 :(得分:3)

public class MyTrigger
{
    private bool _trigger;

    public bool Trigger
    {
        get 
        { 
            var val = _trigger;
            _trigger = false;
            return val;
        }
        set { _trigger = value; }
    }
}