1

Google の Go プログラミング言語の構造体の中にベクトル変数を入れようとしています。これは私がこれまでに持っているものです:

欲しい:

type Point struct { x, y int }
type myStruct struct {
 myVectorInsideStruct vector;
}

func main(){
 myMyStruct := myStruct{vector.New(0)};
 myPoint := Point{2,3};
 myMyStruct.myVectorInsideStruct.Push(myPoint);
}

もつ:

type Point struct { x, y int }

func main(){
myVector := vector.New(0);
myPoint := Point{2,3};
myVector.Push(myPoint);
}

ベクトルをメイン関数で問題なく動作させることができますが、使いやすいように構造体内にカプセル化したいと考えています。

4

2 に答える 2

2

これがあなたの望むものかどうかわからないので、うまくいかない場合はコメントを残してください:

package main

import "container/vector";

type Point struct { x, y int };

type mystruct struct {
    myVectorInsideStruct * vector.Vector;
}

func main() {
    var myMyStruct mystruct;
    myMyStruct.myVectorInsideStruct = new(vector.Vector);
    myPoint := Point{2,3};
    myMyStruct.myVectorInsideStruct.Push(myPoint);
}
于 2009-11-23T04:39:54.143 に答える
0

これがあなたが望むものかどうかはわかりませんが、:

package main

import (
    "fmt";
    "container/vector";
)

type myStruct (
    struct {
        myVectorInsideStruct vector.IntVector;
    }
)


func main() {
    v := new(myStruct);
    v.myVectorInsideStruct.Init(0);

    for i := 1 ; i < 10 ; i++ {
        v.myVectorInsideStruct.Push(i);
    }

    fmt.Printf("v.myVectorInsideStruct: %v\n", v.myVectorInsideStruct.Data());
}
于 2009-11-23T04:42:42.180 に答える