创建struct数组并初始化其中的元素时出错

时间:2017-04-12 20:49:26

标签: go

我正在尝试创建包含两个元素的数组但是我收到了错误

(and 1 8)    ; ==> 8
(logand 1 8) ; ==> 0
(or 1 8)     ; ==> 1
(logior 1 8) ; ==> 9
  

在分配

中不能使用fE(类型* TODO)作为类型TODO

我不知道为什么 另外我想知道是否有一个简短的表单在golang中声明和初始化数组/切片,如此

 type TODO struct {
    Number             int
    Task               string
}

func main() {
    var todoArr [2]TODO

    fE := &TODO{Number: 10, Task: "Task1"}
    sE := &TODO{Number: 11, Task: "Task2"}
    todoArr[0] = fE
    todoArr[1] = sE
}

1 个答案:

答案 0 :(得分:1)

更改代码以声明指向TODO的指针数组:

var todoArr [2]TODO

fE := TODO{Number: 10, Task: "Task1"}
sE := TODO{Number: 11, Task: "Task2"}
todoArr[0] = fE
todoArr[1] = sE

或更改代码以将TODO值放入数组中:

[]*TODO{&TODO{Number: 10, Task: "Task1"}, &TODO{Number: 11, Task: "Task2"}}

您可以使用文字语法声明切片为

[]TODO{TODO{Number: 10, Task: "Task1"}, TODO{Number: 11, Task: "Task2"}}

   

who { 
    font-family: "Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 3vw;
    font-weight: 400;
    color: white;
    margin-top: -9.5%;
    margin-right: 12px;
}




.skewed {
  background: white;
  width: 25%;
  height: 500px;
  margin-left: 75px;
  -webkit-transform: skewX(30deg);
  -ms-transform: skewX(30deg);
  transform: skewX(-40deg);
  overflow:hidden;
  -webkit-backface-visibility: hidden;
  float: left;
}
.skewed img {
  position:absolute;
  height: 100%;
  width: 100%;
  left:-20px;
    overflow: hidden;
   transform: skewX(40deg);
}

取决于您是否选择使用指针。