当前位置: 首页 > 知识库问答 >
问题:

go没执行起来?

郑博
2024-11-04
package main

import (
    "fmt"
)

type Medal struct {
    Name       string
    Obtainable bool
}

type Technician struct {
    Name string
}

func (t *Technician) CheckMedalAvailability(medal *Medal) {
    if medal.Obtainable {
        fmt.Printf("搞技术真的能获得 %s 勋章,大家能满足吗?\n", medal.Name)
    } else {
        fmt.Printf("搞技术不能获得 %s 勋章,大家可能不太满足。\n", medal.Name)
    }
}

func main() {
    goldMedal := Medal{Name: "黄金勋章", Obtainable: true}
    tech := Technician{Name: "张三"}
    tech.CheckMedalAvailability(&goldMedal)
}

共有1个答案

宦正诚
2024-11-04

你要new 一个Technician 实例化,而不是直接这样调用。
tech := Technician{Name: "张三"}

 类似资料:
  • 在上面的例子中,我们演示了一下如何去触发执行一个外部的进程。我们这样做的原因是我们希望从Go进程里面可以访问外部进程的信息。但有的时候,我们仅仅希望执行一个外部进程来替代当前的Go进程。这个时候,我们需要使用Go提供的exec函数。 package main import "syscall" import "os" import "os/exec" func main() { // 本例中

  • 问题内容: 我正在寻找在Go中执行shell命令,并在程序中以字符串形式获取结果输出。我看到了Rosetta Code 版本: 但这并不能以我可以通过编程方式访问的方式捕获实际的标准或错误-那些仍会打印到常规的stdout / stderr。我看到使用Pipe作为out或err可以在其他地方提供帮助,但是没有如何执行此操作的示例。有任何想法吗? 问题答案: 该答案不代表Go标准库的当前状态。请查看

  • 问题内容: 我有一个包含单元测试的Go文件,其中一些使用了公共变量。我正在测试的代码中使用了另一个全局变量。所有这些都可能导致问题。 在Go中,当我们执行位于同一文件中的测试时,它们如何运行?并行还是下一个不会在前一个完成之前开始? 问题答案: 测试起来真的很容易: 使用运行它,输出显示它是顺序的: 因此,正常的测试是依次执行的,但是请不要忘记未定义顺序:如何依次运行golang测试? 还要注意,

  • 嘿,我在POM中做了这个配置。xml文件并行运行测试。但当我使用cmd进行“mvn验证”时,只有一个浏览器正在运行一个功能,而在完成一个功能文件的执行后,另一个功能正在运行。这是我的代码和pom。xml请建议我怎么做? 我正在使用cucumber 这是我的pom.xml代码: 提前感谢。

  • 我制作了以下cronjob sh文件: 手动运行此文件时,作业将正确运行。

  • 我有以下主要功能: 我试图在这里做的是测量将新键插入到B树中的执行时间,最多可达500次。问题是我得到的时间度量值有点小,所以我的老师告诉我循环多次。

  • 问题内容: 我正在我的VirtualBoxed Ubuntu 11.4上测试此Go代码 Ubuntu可以访问我所有的4个内核。我通过同时运行几个可执行文件和系统监视器来检查这一点。但是,当我尝试运行此代码时,它仅使用一个内核,并且没有从并行处理中获得任何收益。 我做错了什么? 问题答案: 您可能需要查看Go FAQ 的Concurrency部分,特别是以下两个问题,并确定哪个(如果不是两个)适用于