在字符串中添加一行

时间:2013-03-29 23:13:53

标签: c# string

我正在做作业有一个问题。赋值让我添加了一个私有属性(私有字符串历史),它应该是读/写的。我可以做到这一切。然后说明说“确保它不能被覆盖 - 写入它应该在字符串中添加一行。”

如何在不覆盖任何内容的情况下在字符串中添加一行?

2 个答案:

答案 0 :(得分:6)

听起来像是一个措辞严厉的问题。你是对的:一个变量不能改变它的状态,同时保持它的状态。我猜他们的意思是这样的:

    private string _SafeString;
    public string SafeString
    {
        get { return _SafeString; }
        set 
        { 
            _SafeString += ("\n" + value); 
        }
    }

所以'分配'字符串实际上附加到原始字符串,而不仅仅是分配。

答案 1 :(得分:1)

您对属性的定义更像是C#中的 field property 。您应该查看属性,它将允许您在将值分配给(或从某个字段获取)时执行各种自定义逻辑。

private string history;
public string History
{
    get { return history; }
    set
    {
        // Do something fancy with 'value', e.g:
        history = history + "\n" + value;
    }
}