es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El problema con la función dada es que utiliza el paso por valor para el argumento vector. Esto significa que se hace una copia del vector original y cualquier modificación no se reflejará fuera de la función. Para solucionar este problema, el argumento vector se puede pasar por referencia de la siguiente manera:

    void funcion(vector<int>& tab, int n)
    {
        if(n > 0)
        {
            tab.push_back(n);
            funcion(tab, n - 1);
        }
    }
    

    Con esta modificación, cualquier cambio realizado en el vector dentro de la función se reflejará también fuera de ella.

Comments are closed.