'Keith Randall' via golang-nuts <golang-nuts@googlegroups.com> schrieb am Di., 18. Mai 2021, 18:25:
> You can use a function call to do the cast: > > func byteErr2stringErr(b []byte, e error) (string, error) { > return string(b), e > } > content, err := byteErr2stringErr(os.ReadFile(path)) > > It's still using additional variables, but they are hidden inside the > helper function. > On Sunday, May 16, 2021 at 8:07:24 PM UTC-7 Kurtis Rader wrote: > >> On Sun, May 16, 2021 at 7:49 PM 'Marc Michael' via golang-nuts < >> golan...@googlegroups.com> wrote: >> >>> as Go provides multi values I would expect that's possible to cast such >>> a multi value. Do I see it correctly, that Go does not provide it? >>> >>> Example: >>> >>> os.ReadFile returns []byte, error. >>> I want to cast the []byte to a string. >>> >>> content, err := os.ReadFile(path) >>> >>> Is it possible to cast the []byte directly to a string without using a >>> second variable? >>> >> >> No, it is not possible to transform the type of one return value in a >> multi-valued >> expression such as a function call. Such syntactic sugar would have limited >> usefulness and, in my opinion, is likely to decrease readability and thus >> be a source of bugs. If you find yourself needing to perform such >> conversions so often that such a feature is useful that suggests the APIs >> you're using need to be changed. >> > Hello, thanks for the clarification. I have thought that I had something overseen. I have thought about introducing a second variable of type string, but this would lead to doubling of the memory usage, especaly as I don't now really how much data there is. With the additional function I think this would not a real problem, as the []byte would go away if the additional function finishes. Thanks all for your help. :-) Kindly regards > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAEOc3dUsahY7W3o_6j%3DM6ycRMnpv6XXnHOr0tyXxperzZ%3DB9kg%40mail.gmail.com.