美文网首页
【Go - 如何查看类型,运行前/运行时】

【Go - 如何查看类型,运行前/运行时】

作者: wn777 | 来源:发表于2024-07-27 17:55 被阅读0次

方式1 - 运行时查看

在Go中,你可以使用reflect.TypeOf()函数来获取变量的类型。这需要导入reflect包。以下是个示例,在运行时打印变量的类型:

package main

import (
    "context"
    "fmt"
    "reflect"

    "go.mongodb.org/mongo-driver/mongo"
    "go.mongodb.org/mongo-driver/mongo/options"
)

var singlestonMongoClient *mongo.Client = nil

func getSinglestonMongoClient() *mongo.Client {
    if singlestonMongoClient == nil {
        // 创建连接到 MongoDB 的客户端
        // mongodb+srv://xhs:
        uri := "mongodb://localhost:27017"
        client, err := mongo.Connect(context.TODO(), options.Client().
            ApplyURI(uri))

        if err != nil {
            panic(err)
        }
        singlestonMongoClient = client
    }
    return singlestonMongoClient

}
func main() {

    client := getSinglestonMongoClient()
    if client == nil {
        panic("client is nil")
    }

    fmt.Println("c1 %p", client)
    fmt.Printf("Type of client: %v\\n", reflect.TypeOf(client))

}

这段代码会打印出client变量的具体类型,例如*mongo.Client,这表示client是指向mongo.Client类型的指针。

方式2 - 运行前查看

由于Go是强语言类型的,所以运行前,IDE比如VSCode移动到变量上,即可查看类型。

相关文章

  • Golang学习笔记-反射

    反射让我们可以在运行时获取对象的类型信息,比如查看一个结构体有多少字段,查看函数的入参类型和返回值类型等。 Go提...

  • Go中的panic与recover机制

    panic Go的类型系统会在编译时捕获很多错误,但有些错误只能在运行时检查,如数组访问越界、空指针引用等。这些运...

  • golang反射机制介绍

    golang反射机制介绍 Go语言提供了一种机制,在编译时不知道类型的情况下,可更新变量、在运行时查看值、调用方法...

  • go 反射

    反射的概念 反射就是程序能够在运行时动态的查看自己的状态,比关切允许修改自身的行为。1、GO的反射基础是接口和类型...

  • 关于Golang的那些事(十一)-- 反射

    Go语言提供了一种机制,在编译时不知道类型的情况下,可以更新变量、在运行时查看值、调用方法以及直接对它们的...

  • 性能监控与调优

    JVM的参数类型 标准参数 X参数 XX参数 运行时JVM参数查看 jstat查询虚拟机统计信息 如何导出内存影像...

  • 类加载机制与反射(二)

    通过反射查看类的信息 Java程序中许多对象在运行时都会出现两种类型:编译时类型和运行时类型例如:Person p...

  • Go语言基础——反射

    Go语言提供了一种机制,在编译时不知道类型的情况下,在运行时,可更新变量、查看值、调用方法以及直接对它的结构成员进...

  • Go语言类型转换和类型断言

    Go语言的类型转换和类型断言: 类型转换在编译期完成,包括强制转换和隐式转换 类型断言在运行时确定,包括安全类型断...

  • 基于JDK命令行工具的监控以及实战Java内存溢出

    1、JVM参数类型 JVM包括3种参数类型,标准类型,X参数类型和XX参数类型。 2、查看JVM运行时参数 介绍以...

网友评论

      本文标题:【Go - 如何查看类型,运行前/运行时】

      本文链接:https://www.haomeiwen.com/subject/ielbhjtx.html