enclosing scope
<p>what's wrong with this code?</p>

<pre><code>class matrix{ 
private:  
   friend transpose(const matrix&amp;);  
   friend class invert;  
   public: //...
};  
matrix (*p)(const matrix&amp;)=&amp;transpose; //error: no transpose() in scope.
</code></pre>

<p>what does the statement means "a friend declaration does not introduce a name into enclosing scope".This problem does not occur when friend keyword is removed</p>
