can not convert parameter 1 from int into &int
<p>Lets imagine I have got functions:</p>

<pre><code>int switcherINT(char &amp;c){
    switch (c){
    case '1': return 1; break;
    case '2': return 2; break;  
    case '3': return 3; break;
    case '4': return 4; break;
    case '5': return 5; break;
    case '6': return 6; break;
    case '7': return 7; break;
    case '8': return 8; break;
    case '9': return 9; break;
    case '0': return 0; break;
    default: return err;
    }
}
char switcherCHAR(int &amp;c){
    switch (c){
    case 1: return '1'; break;
    case 2: return '2'; break;  
    case 3: return '3'; break;
    case 4: return '4'; break;
    case 5: return '5'; break;
    case 6: return '6'; break;
    case 7: return '7'; break;
    case 8: return '8'; break;
    case 9: return '9'; break;
    case 0: return '0'; break;
    default: return errCH;
    }
}
</code></pre>

<p>and I am trying to compute nest expression:</p>

<pre><code>c.str[i] = switcherCHAR(switcherINT(pthis-&gt;str[pthis-&gt;size-i-1])-switcherINT(pb-&gt;str[pb-&gt;size-i-1])-loc);
</code></pre>

<p>where </p>

<pre><code>longMath *pthis(this),*pb(&amp;b);
longMath c;
class longMath{
protected:
    char* str;
    int size;

protected:
........
</code></pre>

<p>compiler says:
"can not convert parameter 1 from int into &amp;int"
Haw can I solve this problem?</p>
