c# – 代码合同:如何在后置条件中声明字段/属性的值没有改变?

前端之家收集整理的这篇文章主要介绍了c# – 代码合同:如何在后置条件中声明字段/属性的值没有改变?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我最好只用一个代码示例来展示我想要实现的目标?
class SomeClass
{
    public int SomeProperty;

    public void SomeOperation()
    {
        Contract.Ensures( "SomeProperty's value has not changed." );
                     //   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                     //    How can I write this post-condition?
    }
};

(传递给Contract.Ensures()的字符串当然只是实际后置条件表达式的占位符.)

我怎样才能做到这一点? Contract.OldValue<>()在这里有用吗?

解决方法

Contract.OldValue应该足够了:
Contract.Ensures(this.SomeProperty == Contract.OldValue(this.SomePropety));
原文链接:https://www.f2er.com/csharp/99435.html

猜你在找的C#相关文章