1. In tutti gli standard C++ precedenti al C++11 (che ancora non è molto diffuso) non è consentito inizializzare i campi di una classe in quel modo. Il modo corretto di inizializzare campi di una classe è dal costruttore, tramite la sintassi dell'initialization list, oppure tramite assegnamento diretto, come stai già facendo nel costruttore.
In sintesi: togli "=0" dopo le dichiarazioni di R e C, tanto comunque sono valori che vengono sovrascritti dal costruttore (che viene necessariamente eseguito).
2. Quando definisci un metodo della classe al di fuori del blocco class, devi specificare a che classe si riferisce tramite la sintassi nomeclasse::nomemetodo (altrimenti il compilatore non sa a che classe ti stai riferendo); ergo, modifica la definizione del costruttore in:
codice:ese::ese(int rows,int cols) { R = rows; C = cols; }