C#替换基类摘要注释而不覆盖变量

时间:2016-03-20 11:27:15

标签: c# inheritance comments summary

我试图用新评论替换基类变量注释,我该如何实现?

这里是一个内置类,例如:

var1

我想在导出类中添加<para>Adding comment to built-in variable.</para>class DerivedClass : BaseClass { /// <summary>Built-in class variable 1.</summary> /// <para>Adding comment to built-in variable.</para> public float var1; ... } 的摘要,其代码如下:

function clean_install_hdd () {
    Switch (Get-BiosType) {
        1       {$firmwaremode='Legacy BIOS'}
        2       {$firmwaremode='UEFI Mode'}
        Default {$firmwaremode='Unknown'}
    }
    Get-Disk

    $PartitionSize = Read-Host "Partition size - How many GB or max to use all available space"

    $Params = @{
        DiskNumber = 0
        DriveLetter = "C"
    };

    if ($PartitionSize -eq "max") {
        $Params.Add("UseMaximumSize",$true);
    } else {
        $Params.Add("Size", $PartitionSize);
    }

    if ("$firmwaremode" -eq "Legacy BIOS") {
        Clear-Disk 0 -RemoveData -RemoveOEM  -Confirm:$false; Initialize-Disk 0 -PartitionStyle MBR -Confirm:$false;
        $Params.Add("IsActive",$true);
        New-Partition @Params | Format-Volume -FileSystem NTFS -NewFileSystemLabel Windows -ShortFileNameSupport $False  -Confirm:$false
    }
    if ("$firmwaremode" -eq "UEFI Mode") {
        Clear-Disk 0 -RemoveData -RemoveOEM  -Confirm:$false; Initialize-Disk 0 -PartitionStyle GPT  -Confirm:$false
        $systemPart = New-Partition -DiskNumber 0 -GptType '{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}' -Size 100MB -DriveLetter S
        & format.com "$($systemPart.DriveLetter):" /FS:FAT32 /Q /Y | Out-Null
        New-Partition -DiskNumber 0 -GptType '{e3c9e316-0b5c-4db8-817d-f92df00215ae}' -Size 128MB
        Write-Host $partsize_param
        $Params.Add("GptType","{ebd0a0a2-b9e5-4433-87c0-68b6b72699c7}");
        New-Partition @Params | Format-Volume -FileSystem NTFS -NewFileSystemLabel Windows -ShortFileNameSupport $False -Confirm:$false
    }
}

还有一条消息说:

  

&#39; DerivedClass&#39;隐藏继承的成员&#39; BaseClass.var1&#39;。如果想要隐藏,请使用new关键字。

好像我没有替换Derived Class中的评论。

有没有办法实现这个目标?任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:0)

我不知道只是覆盖基本注释的方法,但是派生类可以有一个只获取并设置基本属性的属性,然后你可以给它一个新的注释。

class BaseClass
{
    /// <summary>Time To Live.</summary>
    public float TTL;

    ...
}

class DerivedClass : BaseClass
{
    /// <summary>Time To Live.</summary>
    /// <para>Also stops ticking after living time is longer than TTL.</para>
    public float TTL
    {
        get { return base.TTL; }
        set { base.TTL = value; }
    }

    ...
}

答案 1 :(得分:0)

你有两件事不利于你:

  1. 你不能&#34;覆盖&#34;派生类中的注释。注释与定义关联成员的类相关联。将注释更改为继承成员的唯一方法是覆盖它们。
  2. 字段不可覆盖。您可以从派生类中访问它们,但由于它们只是数据且没有实现,因此没有任何内容可以覆盖&#34;。
  3.   

    我希望添加一些注释,以便更清楚地使用说明

    您的意思是消费者在中使用或使用

    一些选项:

    • 向类本身添加注释,阐明该用语(以及可能的其他字段)的用途。
    • 在使用它的方法中添加注释,说明TTL的不同用法?
    • 在基类中使用其他字段?如果用法不同,最好不要重复使用基本属性以避免混淆。