2022-09-16:以下go语言代码输出什么?A:101;B:100;C:1;D:2。 package main import ( “fmt“ ) type MS struct {

Posted 福大大架构师每日一题

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2022-09-16:以下go语言代码输出什么?A:101;B:100;C:1;D:2。 package main import ( “fmt“ ) type MS struct {相关的知识,希望对你有一定的参考价值。

2022-09-16:以下go语言代码输出什么?A:101;B:100;C:1;D:2。

package main

import (
    "fmt"
)

type MS struct 
    Name string
    Cgs  int


func main() 
    hashRun := make(map[string]*MS)
    mss := []MS
        MSName: "m", Cgs: 100,
        MSName: "m", Cgs: 1,
    
    for _, ms := range mss 
        if h, ok := hashRun[ms.Name]; ok 
            h.Cgs += ms.Cgs
         else 
            hashRun[ms.Name] = &ms
        
    
    for _, ms := range hashRun 
        fmt.Println(ms.Cgs)
    

答案选D。有部分人会选A。这是经典的for range,变量共用问题。

以上是关于2022-09-16:以下go语言代码输出什么?A:101;B:100;C:1;D:2。 package main import ( “fmt“ ) type MS struct {的主要内容,如果未能解决你的问题,请参考以下文章