S2374 — Signed types should be preferred to unsigned ones

Language
VB.NET
Type
Code smell
Severity
Critical
Tags
pitfall

Why is this an issue?

Unsigned integers have different arithmetic operators than signed ones - operators that few developers understand. Therefore, signed types should be preferred where possible.

Noncompliant code example


Module Module1
    Sub Main()
        Dim foo1 As UShort   ' Noncompliant
        Dim foo2 As UInteger ' Noncompliant
        Dim foo3 As ULong    ' Noncompliant
    End Sub
End Module

Compliant solution


Module Module1
    Sub Main()
        Dim foo1 As Short
        Dim foo2 As Integer
        Dim foo3 As Long
    End Sub
End Module

↑ Back to top