title: Conversion error while using iterator with pointer
body: <pre><code>struct trie_node {
      char ch;
      std::unordered_map&lt;char, trie_node*&gt; children;
      trie_node() {
          ch = '\0';
      }
  };
  class Trie {
  private:
      trie_node* trie_root;
  public:
      Trie() {
          trie_root = new trie_node();
      }
      void insert_recursive(std::string str, trie_node* root, int len, int init) {
          if (len == 0) {
              return;
          }
          std::unordered_map&lt;char, trie_node*&gt;::iterator it;
          it = root-&gt;children.find(str[0]);
      }
  };
  </code></pre>
  
  <p>I am trying use iterator but it gives me error when i assign <code>root-&gt;children.find(str[0]);</code></p>
  
  <blockquote>
    <p>"no suitable conversion function from "std::_List_iterator>>>" to "std::_List_iterator>>> *" exists"</p>
  </blockquote>
  
  <p>How do I solve this issue?</p>