具有非固定类型的参数的函数

时间:2014-11-10 02:48:54

标签: go

是否可以在GoLang

func funcWithDynamicTypeArgs(param notFixedType) 
{

}

我希望param成为intstringmap以及任何类型。 换句话说:Go是否可以使用动态类型参数声明和使用function

1 个答案:

答案 0 :(得分:2)

例如,

func function(param interface{}) {
}

  

The Go Programming Language Specification

     

Interface types

     

所有类型都实现空接口:

interface{}
     

Type assertions

     

对于接口类型的表达式x和类型T,表示主要的   表达

x.(T)
     

断言x不是nil,并且存储在x中的值是T类型。   符号x。(T)称为类型断言。


请参阅使用package fmt处理任何类型参数的package reflect。例如,

  

func Print

func Print(a ...interface{}) (n int, err error)
     

使用其操作数和写入的默认格式打印格式   标准输出。当两者都不是时,在操作数之间添加空格   串。它返回写入的字节数和任何写入错误   遇到。