Iinvalid operands of types
<p>Let be </p>

<p>gf.h</p>

<pre><code>typedef unsigned short gf_t;
class GaloisField{
public:
 gf_t * gf_exp;
 gf_t * gf_log;
 int gf_extension_degree, gf_cardinality, gf_multiplicative_order;
 static gf_t gf_ord();
 static int gf_inv(int x);
</code></pre>

<p>gf.cpp</p>

<pre><code> gf_t GaloisField::gf_ord(){
   return gf_multiplicative_order;
 }

 int GaloisField::gf_inv(int x){
   return gf_exp[GaloisField::gf_ord() - gf_log[x]]; //line 181
 }
</code></pre>

<p>I get the message:
gf.cpp:181: error: invalid operands of types ‘gf_t’ and ‘gf_t ()(gf_t)’ to binary ‘operator-’. Why this?</p>
