Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: flony en 25 Septiembre 2022, 01:01 am



Título: duda con una clase de un libro
Publicado por: flony en 25 Septiembre 2022, 01:01 am
buenas estoy leyendo un libro que se llama Open Data Structures (in C++)
en un momento dice lo siguiente
Citar
In this chapter, and throughout this book, it will be convenient to have
arrays that keep track of their size. The usual C++ arrays do not do this,
so we have defined a class, array, that keeps track of its length. The
implementation of this class is straightforward. It is implemented as a
standard C++ array, a, and an integer, length:

y manda estos codigos
(http://)

estoy equivocado o se me hace que le falta algo mas de codigo a esa clase


Título: Re: duda con una clase de un libro
Publicado por: BloodSharp en 25 Septiembre 2022, 04:50 am
buenas estoy leyendo un libro que se llama Open Data Structures (in C++)
y manda estos codigos
No se ven que códigos estás hablando, para arrays con la STL tenés vector (https://en.cppreference.com/w/cpp/container/vector) (lista enlazada), deque (https://en.cppreference.com/w/cpp/container/deque) (lista doblemente enlazada). Ambas tienen soporte para hacer seguimiento de las longitudes...


B#


Título: Re: duda con una clase de un libro
Publicado por: EdePC en 25 Septiembre 2022, 18:27 pm
Veo que el libro es gratuito: http://opendatastructures.org/ods-cpp.pdf y tiene versión Web también: http://opendatastructures.org/ods-cpp/2_Array_Based_Lists.html cuando tenga algo de tiempo le echaré un ojo pero de momento dejo esas fuentes


Título: Re: duda con una clase de un libro
Publicado por: flony en 25 Septiembre 2022, 23:11 pm
mil disculpas no pude poner los códigos
me olvide como se sube una imagen jajajaja
la cuestión es que las clases empiezan
Código:
class nombre
{
....
}
este no tiene nada de eso por eso se me hace que algo le debe faltar
https://im.ge/i/1wWoH6 (https://im.ge/i/1wWoH6)
https://im.ge/i/1wWrmK (https://im.ge/i/1wWrmK)
gracias por la version web es mas copada




Título: Re: duda con una clase de un libro
Publicado por: RayR en 26 Septiembre 2022, 16:30 pm
Bueno, sí, claramente esa no es una implementación completa de la clase, sino simplemente de algunas de sus funciones y variables miembro. Ya te tocaría a ti crear la clase completa.

Por cierto, aunque creo que siempre es importante (incluso diría indispensable) saber implementar de cero las distintas estructuras de datos, como ya te dijeron, C++ sí que incluye, desde hace muchos años, arrays que conocen su propio tamaño, (como std::array) entre muchas otras estructuras. El libro debe ser muy viejo.

También una aclaración: la clase vector de C++ no es una lista enlazada, sino simplemente un array dinámico, con los elementos almacenados en direcciones contiguas dentro de un mismo bloque de memoria, o sea, nada que ver con las listas. Igualmente, deque no es una lista doblemente enlazada, sino una cola doblemente terminada. La complejidad de las operaciones que estas clases ofrecen es completamente distinta a la de las listas. En realidad, forward_list y list son las clases que C++ proporciona para listas y listas doblemente enlazadas.