Я учусь Golang, и я не могу понять этот дизайн API. Поэтому многие методы пакета os возвращают указатель на файл *. Мой вопрос: почему это указатель, а не просто значение, если File встраивает указатель на файл * с областью видимости пакета? Разве это не тот же лог c, что и для срезов или карт? Я имею в виду, если его базовая структура является просто указателем на «настоящий» файловый объект, почему я не могу просто передать его как значение? Насколько я понимаю, я просто скопировал бы Файл, но основной файл не будет скопирован, только его указатель.
Заранее спасибо.