gpt4 book ai didi

vb.net - 如何抑制VS2005中特定函数的编译器警告(VB.Net)

转载 作者:行者123 更新时间:2023-12-02 08:29:52 25 4
gpt4 key购买 nike

我有一个从基类继承并实现以下内容的类...

    Public Function CompareTo(ByVal obj As Object) As Integer Implements System.IComparable.CompareTo

现在,它继承的基类也实现了此 System.IComparable.CompareTo,因此我收到以下编译器警告:

警告:“System.IComparable.CompareTo”已由基类实现。重新实现假定的功能。

我对此很满意,所以我的问题是如何仅针对此函数抑制此警告(即并非所有此类警告)。

说明:

  • 这是 link MSDN 上的错误。
  • 我已经尝试过“阴影”和“覆盖”,但都没有消除警告。
  • 警告不在方法本身上(除非省略了 Shadows 或 Overrides),而是专门针对“Implements System.IComparable.CompareTo”。
  • 我不想抑制所有此类警告(如果突然出现),只是抑制这一类型的警告。

解决方案:
我希望使用 System.Diagnostics.CodeAnalysis.SuppressMessage 属性或类似 C# 的 #pragma 的属性,但看起来没有办法抑制单行的警告。不过,有一种方法可以关闭此项目的此消息,而无需关闭所有警告。

我手动编辑了 .vbproj 文件,并将 42015 包含在节点中以进行调试和发布编译。不太理想,但比总是在 IDE 中看到警告要好。

如果有人有更好的解决方案,请添加它,我很乐意尝试标记答案。

最佳答案

仅在基类中使用“Implements”:

基类中的签名:

Public Overridable Function CompareTo(ByVal obj As Object) As Integer Implements System.IComparable.CompareTo

继承类中的签名:

Public Overrides Function CompareTo(ByVal obj As Object) As Integer

关于vb.net - 如何抑制VS2005中特定函数的编译器警告(VB.Net),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/273103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com