C++ Multiple Inheritance : Function Mismatch?
<p>C++ won't allow me to construct an object of type <code>SymIntPoly</code> and call <code>f()</code> on it. Below are the classes and the structure.  </p>

<pre><code>template&lt;typename T&gt;
struct SymPoly
{
    T f() { return this-&gt;x; }
};

struct IntPoly
{
    int x;
    virtual int f() = 0;
};

struct SymIntPoly : public IntPoly, public SymPoly&lt;int&gt;
{
};
</code></pre>

<p>I do not know about compilers, but I feel that the compiler does not treat the two functions as the same functions (ie. they do not have the same internal signature?)</p>

<p>What is another way of what I'm trying to do?</p>