vb.net - 如何使 VB.NET 函数的参数作为泛型类型?

标签 vb.net function generics generic-programming

我有一个 VB.NET 函数,如下所示,传递给该函数的参数“x”的类型为“Single”。但是,我想编写函数以便它可以接受任何数字类型,例如“单”、“双”和“整数”。我知道这样做的一种方法是编写 3 个具有相同名称的函数,但这会很乏味。任何人都可以提出任何想法吗?谢谢你。

Public Function Square(x As Single) As Single
  Return x * x
End Function

最佳答案

试试下面的方法

Public Function Square(Of T)(ByVal x As Object) As T
    Dim b As Object = Val(x) * Val(x)
    Return CType(b, T)
End Function

您可以像这样使用上述功能
Dim p As Integer = Square(Of Integer)(10)
Dim d As Double = Square(Of Double)(1.5)

关于vb.net - 如何使 VB.NET 函数的参数作为泛型类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25255014/

相关文章:

ASP.NET DropDownList SelectedIndexChanged 事件未触发

C#:根据框架版本加载引用的程序集?

vb.net - 是否可以获取元组中的第 n 项?

sql - 无法检索从 mysql 函数返回的值

java - 流口水功能

java - 泛型类定义中的可变长度类型参数

windows - 如何找到 Word 应用程序窗口?

function - QEMU 中的 USB 功能 Controller 仿真

java - "<T extends ...>"返回类型的意外编译器警告

typescript - 如何一般地键入不一致函数的修改字典