使用 if 语句填充只读属性

本文关键字:只读属性 填充 语句 if 使用 | 更新日期: 2023-09-27 18:36:08

我从学校收到了一个关于模拟考试的问题。

我需要填写一个已经构建一半的应用程序(Windows表单应用程序)

在这一行代码中,它说:

    public bool DangerousLoad 
    { 
        get 
        {
            // ==> Place here the code that has been asked from assignment 1D:
        }
    } 

他们要我做的是:

作业1D(8分):属性 危险负载 尚未完成。如果船舶包含危险负载,则属性 DangerousLoad 必须获取值 true。如果负载等于液化石油气(某种汽油)或石油,则负载是危险的。填写属性..

所以我的问题是如何做到这一点?因为我尝试了以下方法:

    public bool DangerousLoad 
    { 
        get 
        {
            bool lpg;
            bool oil;
            // ==> Place here the code that has been asked from assignment 1D:
            if (DangerousLoad == lpg)
            {
                DangerousLoad = true;
            }
        }
    } 

我不明白的是这个..我需要将代码放在注释的正下方,但是当我这样做时,它会给我一个错误,即它是一个"只读"属性。

所以你们.. 我该如何解决这个问题,如果危险负载包含液化石油气或石油,该属性变为真?

提前致谢

使用 if 语句填充只读属性

 DangerousLoad = true;

这意味着您正在尝试设置自身。这是你不能做的,因为它正在阅读。您需要从"get"返回一个值

public bool DangerousLoad 
{ 
    get 
    {
        return isLpg || oil;
    }
} 

类似的东西。