elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes  (Leído 5,878 veces)
DarkItachi


Desconectado Desconectado

Mensajes: 516


Itachi Uchiha


Ver Perfil
[C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« en: 27 Abril 2010, 22:40 pm »

Undefined


« Última modificación: 26 Mayo 2016, 21:01 pm por DarkItachi » En línea

Come to me when you have these eyes...

By more that you try it, a feather never will achieve to fly.
.:BlackCoder:.


Desconectado Desconectado

Mensajes: 388


Cada dia C++!!


Ver Perfil
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #1 en: 28 Abril 2010, 00:54 am »

Hola... Weno yo soy un novato pero pes he leido que no se debe llamar tanto al sistema lo digo por el system cls... Y pes como es C++ que uses string en vez de char[]  :) aunque para mi pes es mejor utilizar dicha clase despues de saber sobre clases.

Saludos... espero haber sido constructivo  :xD


En línea

"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja



DarkItachi


Desconectado Desconectado

Mensajes: 516


Itachi Uchiha


Ver Perfil
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #2 en: 28 Abril 2010, 06:47 am »

Hola... Weno yo soy un novato pero pes he leido que no se debe llamar tanto al sistema lo digo por el system cls... Y pes como es C++ que uses string en vez de char[]  :) aunque para mi pes es mejor utilizar dicha clase despues de saber sobre clases.

Saludos... espero haber sido constructivo  :xD


Bueno, respecto a lo de system("cls"); tienes razón, tengo que hacer una condición de preprocesador pero por lo de string siempre es mejor usar arrays de char ;)

Gracias por el consejo ;) Voy a añadir la condición de procesador.
En línea

Come to me when you have these eyes...

By more that you try it, a feather never will achieve to fly.
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #3 en: 28 Abril 2010, 08:12 am »

Quien te dijo que es mejor usar siempre arreglos de char que strings? es incorrecto, depende el caso y depende para que.
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
DarkItachi


Desconectado Desconectado

Mensajes: 516


Itachi Uchiha


Ver Perfil
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #4 en: 28 Abril 2010, 14:05 pm »

Quien te dijo que es mejor usar siempre arreglos de char que strings? es incorrecto, depende el caso y depende para que.

Bueno, el tipo char es estándar, string no, supongo que para futuras plataformas simples y programación a nivel de sistema sería mejor usar arrays de char, no sé, eso pienso yo, quiza me equivoco :S
En línea

Come to me when you have these eyes...

By more that you try it, a feather never will achieve to fly.
biribau

Desconectado Desconectado

Mensajes: 181


Ver Perfil
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #5 en: 28 Abril 2010, 16:09 pm »

string sí es estándar, sólo eso
En línea

Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #6 en: 28 Abril 2010, 19:08 pm »

Quien te dijo que es mejor usar siempre arreglos de char que strings? es incorrecto, depende el caso y depende para que.

Bueno, el tipo char es estándar, string no, supongo que para futuras plataformas simples y programación a nivel de sistema sería mejor usar arrays de char, no sé, eso pienso yo, quiza me equivoco :S

Si, te equivocas, mas considerando que que uno de los miembros de la clase string es c_str.
Los arreglos de char se usan por costumbre, por compatibilidad con las APIs, por ser lo unico que se sabe usar, y anda a saber por cuantos otros motivos. Eso no los hace mejor.

Si tenes ganas, lee esto

Saludos
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
DarkItachi


Desconectado Desconectado

Mensajes: 516


Itachi Uchiha


Ver Perfil
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #7 en: 28 Abril 2010, 19:19 pm »

Quien te dijo que es mejor usar siempre arreglos de char que strings? es incorrecto, depende el caso y depende para que.

Bueno, el tipo char es estándar, string no, supongo que para futuras plataformas simples y programación a nivel de sistema sería mejor usar arrays de char, no sé, eso pienso yo, quiza me equivoco :S

Si, te equivocas, mas considerando que que uno de los miembros de la clase string es c_str.
Los arreglos de char se usan por costumbre, por compatibilidad con las APIs, por ser lo unico que se sabe usar, y anda a saber por cuantos otros motivos. Eso no los hace mejor.

Si tenes ganas, lee esto

Saludos

Tienes razón, acabo de leer el documento y me sorprendí, string es más eficiente, fácil de leer y más rápido que las cadenas de char; pero nunca he usado string y me gustaría saber si a funciones como strcpy le puedo pasar strings (lo digo porqué el parámetro de entrada es const *char) , si gastan más memoria que las cadenas de char y si se puede acceder a cada carácter que la compone. Salu2
En línea

Come to me when you have these eyes...

By more that you try it, a feather never will achieve to fly.
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #8 en: 28 Abril 2010, 19:36 pm »

Revisa el link que te deje antes:

string class
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
biribau

Desconectado Desconectado

Mensajes: 181


Ver Perfil
Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes
« Respuesta #9 en: 28 Abril 2010, 21:07 pm »

Las string de C desde siempre fueron un punto flaco del lenguaje yo lo consideraría incluso error de diseño garrafal, no lo dije antes porque no encontré el link donde lo había leído, pero se puede razonar, son fuente de bugs explotables, y realmente ineficientes(sin posibilidad de evolucionar ni repararse dado que expone directamente el acceso a su representación interna, aunque esto tenia que ser así por la filosofía en sí del mismo lenguaje), realmente ineficientes me refiero a que concatenar y calcular la longitud son O(n) pudiendo ser en casi cualquier otra implementación O(1) esto es un orden de magnitud y son unas operaciones muy comunes, de hecho casi ningún lenguaje posterior siguió esta senda.
Hasta son poco flexibles y engorrosas.

Mira, y eso que dices de que pueden evolucionar no es verdad, piénsalo, no pueden evolucionar, jamás podrán ser buenas, porque si pudieran serlo ya se habría arreglado y créeme que muchos se han tirado y tiran de los pelos por ellas. Han costado mucho dinero ya.

Ahora bien, alguna ventaja tendrán, y encima es lo que el lenguaje da más facilidades para usar, siempre hay que partir de una no? porque no hay literales para objetos string.

Como ventajas te doy sencillez de uso, si no me equivoco hay mas operaciones estandar para trabajar con arrays de caracteres que con strings. Además los literales son arrays de char, y la entrada salida creo que tambien ergo siempre se parte de un array de chars.
Sencillez de implementacion, estructura interna sencilla de comprender
Cierto polimorfismo primitivo, las operaciones con arrays sirven para ellas, aunque esto solo vale para indexado y reasignacion, los arrays no tienen mas operaciones. Bueno y diferencia. Y memcpy, etc xD y algunas más
Son más eficientes con cadenas pequeñas que los string, que tienen más sobrecarga en las operaciones(debido a una estructura interna mas compleja)

Que rollo, en conclusión, para un ejercicio está de p**a madre como lo has hecho
, pero hay que tener todo eso en cuenta a veces

P.D.: Si alguien me recuerda el link donde decía el error de diseño de los strings C se lo agradecería  :)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines