¿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.
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.