Connor
Las matrices en C ++ se almacenan en la pila. Pero la pila tiene menos memoria para satisfacer todas las necesidades de la memoria en ejecución, especialmente en los sistemas de multiprogramación, existe una gran necesidad de utilizar diferentes técnicas para optimizar el uso de la memoria. Las matrices de punteros proporcionan una forma sencilla para este propósito. Reduce la carga sobre la pila. Considere el siguiente código de C ++ que ilustra el uso de matrices de punteros. Una matriz de punteros a objetos #include
punto de clase {public: Point () {x = 0; y = 0; } ~ point () {} // destructor int Getx () const {return x; } int Gety () const {return y; } vacío Setx (int x) {x = x; } privado: Int x; int y; }; int main () {punto * línea [500]; int i; punto * ppoint; para (i = 0; I <500; i ++) {ppoint = nuevo punto; ppoint-> Setx (i); ppoint-> Sety (i); línea [i] = ppoint; } return 0; } El código define un punto de clase que tiene dos miembros de datos, xey. Para usar esta clase, necesitamos crear un objeto.Este código utiliza objetos de puntos para calcular un objeto de línea, ya que la línea es una colección de puntos que se encuentran entre sus extremos. En una situación normal, es decir, sin el uso de matrices de punteros, todos estos objetos de 500 puntos deben almacenarse en la pila, pero mediante el uso de la pila de punteros se ahorra espacio.