C++ Uso de parámetros de salida


Ejemplo

Los parámetros se pueden usar para devolver uno o más valores; Esos parámetros deben ser punteros o referencias no const .

Referencias:

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;
}

Punteros:

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;
}

Algunas bibliotecas o marcos de trabajo usan un #define 'vacío' para #define que los parámetros sean parámetros de salida en la firma de la función. Esto no tiene un impacto funcional y se compilará, pero hace que la firma de la función sea un poco más clara;

#define OUT

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