blob: e000b15799aa4e5873a9b7970228cdef63f636b4 [file] [log] [blame]
// This example illustrates how C++ templates can be used from Go.
package main
import (
"fmt"
. "swigtests/example"
)
func main() {
// Call some templated functions
fmt.Println(Maxint(3, 7))
fmt.Println(Maxdouble(3.14, 2.18))
// Create some class
iv := NewVecint(100)
dv := NewVecdouble(1000)
for i := 0; i < 100; i++ {
iv.Setitem(i, 2*i)
}
for i := 0; i < 1000; i++ {
dv.Setitem(i, 1.0/float64(i+1))
}
{
sum := 0
for i := 0; i < 100; i++ {
sum = sum + iv.Getitem(i)
}
fmt.Println(sum)
}
{
sum := float64(0.0)
for i := 0; i < 1000; i++ {
sum = sum + dv.Getitem(i)
}
fmt.Println(sum)
}
}