C++ Utilizzo dei parametri di output


Esempio

I parametri possono essere utilizzati per restituire uno o più valori; questi parametri devono essere puntatori o riferimenti non const .

Riferimenti:

void calculate(int a, int b, int& c, int& d, int& e, int& f) {
    c = a + b;
    d = a - b;
    e = a * b;
    f = a / b;
}

puntatori:

void calculate(int a, int b, int* c, int* d, int* e, int* f) {
    *c = a + b;
    *d = a - b;
    *e = a * b;
    *f = a / b;
}

Alcune librerie o framework usano un #define "OUT" vuoto per rendere abbondantemente ovvio quali parametri sono parametri di output nella firma della funzione. Questo non ha impatto funzionale e verrà compilato, ma rende la firma della funzione un po 'più chiara;

#define OUT

void calculate(int a, int b, OUT int& c) {
    c = a + b;
}