Yes.  You need to understand how "fmt" handles types with String() methods. 
 From the docs:

func (Value) Elem 
<http://localhost:6060/src/reflect/value.go?s=25679:25706#L800>
func (v Value <http://localhost:6060/pkg/reflect/#Value>) Elem() Value 
<http://localhost:6060/pkg/reflect/#Value>

Elem returns the value that the interface v contains or that the pointer v 
points to. It panics if v's Kind is not Interface or Ptr. It returns the 
zero Value if v is nil.
func (Value) String 
<http://localhost:6060/src/reflect/value.go?s=55738:55768#L1847>
func (v Value <http://localhost:6060/pkg/reflect/#Value>) String() string 
<http://localhost:6060/pkg/builtin/#string>

String returns the string v's underlying value, as a string. String is a 
special case because of Go's String method convention. Unlike the other 
getters, it does not panic if v's Kind is not String. Instead, it returns a 
string of the form "<T value>" where T is v's type. The fmt package treats 
Values specially. It does not call their String method implicitly but 
instead prints the concrete values they hold.

On Thursday, February 25, 2021 at 11:42:32 PM UTC-7 tapi...@gmail.com wrote:

> What I mean is 
>
>     fmt.Println(v3)
>
> and
>
>     fmt.Println(v3.Elem())
>
> print the same thing. Is it an intended design?
>
> On Thursday, February 25, 2021 at 11:11:52 PM UTC-5 Kurtis Rader wrote:
>
>> On Thu, Feb 25, 2021 at 8:01 PM tapi...@gmail.com <tapi...@gmail.com> 
>> wrote:
>>
>>>
>>> https://play.golang.org/p/-GZajVGPWYv
>>>
>>
>> You need to clarify your question. I don't see any obvious problem with 
>> the output of your program. The reflect.Value.Elem() call is defined to 
>> return a reflect.Elem object. But that observation might be irrelevant 
>> since you have not clearly stated the problem. 
>>
>> -- 
>> Kurtis Rader
>> Caretaker of the exceptional canines Junior and Hank
>>
>

-- 
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/a9a8331f-6ccc-4c12-b71a-dc2284066f24n%40googlegroups.com.

Reply via email to