Tengo estos dos métodos en una clase que difieren solo en una llamada a un método. Obviamente, esto es muy poco seco, especialmente porque ambos usan la misma fórmula.¿Cómo hacer que este código C++ sea más SECO?
int PlayerCharacter::getAttack() {
int attack;
attack = 1 + this->level;
for(int i = 0; i < this->current_equipment; i++) {
attack += this->equipment[i].getAttack();
}
attack *= sqrt(this->level);
return attack;
}
int PlayerCharacter::getDefense() {
int defense;
defense = 1 + this->level;
for(int i = 0; i < this->current_equipment; i++) {
defense += this->equipment[i].getDefense();
}
defense *= sqrt(this->level);
return defense;
}
¿Cómo puedo arreglar esto en C++?
'this'? Envíanos un código real. :) – GManNickG
Lo que dijo GMan. Además, ¿las variables globales 'attack' y' defense' o omitieron su definición? – sbi
* facepalm * - Bueno, este es mi primer C++ real después de meses de otros idiomas: P. Podría ser peor, podría haber hecho 'self' ya que la mayor parte era Python. – Macha