Ho una classe come ::chiamata di funzione statica non statica in C++
Class Test
{
public:
void Check(){//dosomething};
static void call(){//I want to call check()};
};
Perché call() è un membro statico, quindi non può richiamare le funzioni non statici, quindi penso di usare Check() in call() sta per creare il puntatore Test e quindi puntare su Check(), ma penso che non sia buono, c'è un modo migliore per farlo? Posso riscrivere tutte le cose nella funzione statica, quindi non ho più bisogno di chiamare Check(), ma quello che voglio è riutilizzare il codice in Check() ed evitare codice ripetuto.
Non è chiaro cosa stai cercando di fare.Puoi inventare milioni di modi per aggirarlo con la lingua, ma alla fine la ragione per cui ti trovi in questa situazione è che il tuo requisito non ha senso. Non esiste un contesto oggetto all'interno di 'call'. Perché pensi di doverlo fare? –
Perché non dichiarare 'Verifica' una funzione statica? –
È necessaria un'istanza di 'class test' per chiamare qualsiasi funzione non statica (ad esempio il puntatore' this'). – mark