title: can't get attribute's name and value while parsing xml
body: <p>I have got a non empty <code>pugi::xml_node my_node;</code>. </p>
  
  <p>If I print it with <code>my_node.print(std::cout);</code> I can clearly see that the contents of this node are okay.
  Let's say it's:</p>
  
  <pre><code>&lt;my_class id="0" name="my class" type="my type"&gt;
     &lt;child_1&gt; 45.0 &lt;/child_1&gt;
     &lt;child_2&gt; 0.01 &lt;/child_2&gt;
     &lt;child_3&gt; 100.0 &lt;/child_3&gt;
     &lt;child_4&gt; some_string &lt;/child_4&gt;
  &lt;/my_class&gt;
  </code></pre>
  
  <p>But when I try to iterate it's attributes, I get weird output (which looks like some kind of addresses?). </p>
  
  <pre><code>for (auto attr : my_node.attributes()){
      std::cout &lt;&lt; attr.name() &lt;&lt; " : " &lt;&lt; attr.value() &lt;&lt; std::endl;
  }
  </code></pre>
  
  <p>And here's the output:</p>
  
  <pre><code>0x55727e049cd4 : 0x55727e049ce4
  0x55727e049d1c : 0x55727e049d34
  0x55727e049d8c : 0x55727e049da4
  </code></pre>
  
  <p>I took this example from the documentation by the way and I've got no idea why this is happening.</p>
  
  <p>What am I doing wrong here?</p>