Я могу использовать такие методы, как Text () для big.Int, и он работает нормально, но если я возвращаю big.Int, тогда использование «myfunc (). Text ()» выдает ошибку, тогда как если я возвращаю *Я не получаю ошибки.Почему я могу использовать Text () для big.Int, * big.Int и для функции, которая возвращает * big.Int, но не для функции, возвращаемое значение которой big.Int?
https://play.golang.org/p/ovgeQDHFstP
Исходя из этого и другого поведения (например, как он печатает), это выглядит как * большой. Это тип, который предназначен для использования, это правильно?
Кроме того, если ясделать и использовать переменную типа big.Int или * big.Int, она передается по ссылке.Все в порядке.Но если я хотел передать один по значению, как это лучше всего сделать?
Должен ли я создать новый big.Int и установить его в исходное значение с помощью Set () и передать его?Или я должен передать оригинал big.Int и скопировать его значение в новый big.Int, используя Set () внутри функции?Или есть какой-то другой, лучший способ сделать это?