"не может ссылаться на неэкспортированное имя" при импорте ".." - PullRequest
0 голосов
/ 24 сентября 2019
$ cat print_col.go 
// vim: set noexpandtab tabstop=2:
package gen

import "bufio"

func print_col(f *bufio.Writer, fields [][]byte, NF int, i int, sep []byte) {
    if(i<=NF) {
        f.Write(fields[i-1])
        f.Write(sep)
    }
}
$ cat main/main.go 
// vim: set noexpandtab tabstop=2:
package main

import (
    "os"
    "bufio"
    "strconv"
    ".."
)

func main() {
    stdout := bufio.NewWriter(os.Stdout)
    defer stdout.Flush()
    sep := []byte(os.Args[1])
    i, _ := strconv.Atoi(os.Args[2])
    var fields [][]byte
    for _, x := range os.Args[3:] {
        fields = append(fields, []byte(x))
    }
    gen.print_col(stdout, fields, len(fields), i, sep)
}
$ cat main/main.sh
#!/usr/bin/env bash
# vim: set noexpandtab tabstop=2:

set -v
go run main.go '|' 2 a b c | catt.sh

У меня есть код выше.

Когда я запускаю main.sh, я получаю следующую ошибку.Я понятия не имею, что не так.Кто-нибудь может дать мне знать, как решить проблему?Спасибо.

go run main.go '|' 2 a b c
# command-line-arguments
./main.go:20:2: cannot refer to unexported name gen.print_col
./main.go:20:2: undefined: gen.print_col
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...