golang的指针问题

package main

import "github.com/gin-gonic/gin"

func main() {
    r := gin.Default()
    r.GET("/ping", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "pong",
        })
    })
    r.Run() // 监听并在 0.0.0.0:8080 上启动服务
}

gin的初始代码,想问一下代码中的的 *gin.Context为什么要使用*来获取,加*和不加*的区别的是什么,我应该怎么去判断某一个变量是否需要加*来进行使用呢

阅读 2.1k
1 个回答

这个单从代码上无从判断, 得看人家框架文档. 人家框架就是要接收这样一个函数: 有一个参数, 这个参数的类型为 gin.Context 类型的指针, 同时返回值为 xxx.
至于golang中指针和非指针的用法, 那就是另外一个话题了.

推荐问题