Ho implementato 2 classi, una .h e l'altra .cpp per la costruzione di nodi

Questa è la classe .h

codice:
#pragma once
class Nodo { //classe nodo che contiene tutti i metodi per settare e recuperare frequenza e valore oltre che figli sx/dx
public:
    Nodo() {};    //costruttore di default
    Nodo(int f, char v);    //costruttore che prende in input due parametri rispettivamente frequenza e valore
    Nodo* get_dx() { return this->dx; }
    Nodo* get_sx() { return this->sx; }
    char get_valore() { return valore; }
    int get_frequenza() { return frequenza; }
    void set_frequenza(int freq) { this->frequenza = freq; }
    void set_valore(char valore) { this->valore = valore; }
    void set_dx(Nodo*dx) { this->dx = dx; }
    void set_sx(Nodo*sx) { this->sx = sx; }
    ~Nodo() { delete sx; delete dx; }    //distruttore


private:
    Nodo *sx;
    Nodo *dx;
    int frequenza;
    char valore;
};
Questa è la classe .cpp

codice:
#include "Intestazione.h"

Nodo::Nodo(int f, char v){  //implementazione del costruttore con parametri (implementazione non inline)
    this->frequenza = f;
    this->valore = v;
    this->sx = NULL;
    this->dx = NULL;
}
Il problema è che quando provo ad accedere al this-> il compilatore di Code blocks me lo impedisce e non capisco il motivo
Ho provato anche con altre soluzioni ma niente da fare
Mi sapreste indicare come risolvere o perchè non va?