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.

¿Cómo devolver un arreglo en la declaración de un método utilizando C++?

Estoy intentando escribir código en C++ adecuado para programación orientada a objetos.

Tengo dos clases, llamadas Student y Course. En la clase Student, tengo quiz_scores que es una matriz unidimensional de 4 enteros. Necesito métodos set y get, ambos utilizados de manera natural y común.

En lo siguiente, implemento el método setQuizScores:

c++
void Student::setQuizScores(int* quizscores){
for(int i = 0; i < 4; i++){
quiz_scores[i] = quizscores[i];
}

Donde quizscores son mis miembros privados.

Ahora, lo siguiente es que quiero devolver esta matriz quiz_scores en el getQuizScores para cada estudiante de la clase Student.

Sin embargo, el problema es que C++ no nos permite devolver matrices directamente. En su lugar, quiero la estructura de mi código de la siguiente manera:

c++
int Student::getQuizScores(){
Hacer algo;
devolver los elementos de quiz_scores;
}

¿Cómo puedo hacerlo de manera eficiente?

Prefiero no usar la Biblioteca de Plantillas Estándar (STL), así que necesito crear mis propias matrices y acceder a ellas de acuerdo con la explicación anterior.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Puede usar un puntero para devolver el array del método getQuizScores. El código se vería algo así:

    c++
    int* Student :: getQuizScores(){
    return quiz_scores;
    }

    De esta manera, puede devolver el array sin utilizar el STL.

Comments are closed.