Golang reflect.Cap()的使用示例

Golang reflect.Cap()的使用示例

Go语言提供了内置支持运行时反射实现,使用reflect软件包允许程序使用任意类型的对象进行操作。在Golang中, reflect.Cap() 函数用于获取v的容量。要访问此函数,需要在程序中导入reflect软件包。

语法:

func(v Value)Cap() int

参数: 此函数不接受任何参数。

返回值: 此函数返回整数值。

下面的示例说明了在Golang中使用上述方法的用法:

示例1:

// Golang程序说明 // reflect.Cap()函数   
package main   
import (     "fmt"     "reflect"   )   
func main() {     
    c := make(chan int, 1)     
    vc := reflect.ValueOf(c)          
    succeeded := vc.TrySend(reflect.ValueOf(123))          
    //使用Cap()方法     
    fmt.Println(succeeded, vc.Len(), vc.Cap())
}  

输出:

true 1 1

示例2:

// Golang程序说明 
// reflect.Cap()函数   
package main   
import (     "fmt"     "reflect"   )   
//主功能   
func main() {          
    var val chan string                  
    var strVal reflect.Value = reflect.ValueOf(&val)                    
    indirectStr := reflect.Indirect(strVal)              
    value := reflect.MakeChan(indirectStr.Type(), 1024)               
    // 使用Cap()方法     
    fmt.Printf("Type : [%v] \nCapacity : [%v]", value.Kind(), value.Cap())
} 

输出:

Type : [chan] Capacity : [1024]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程