FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
dudas sobre clases String e Integer
Saludos mis queridos amigos Delphi-Adictos. 1.Tengo una pequeña duda... Basada en .net Framework 1.1Busque información sobre como poder heredar de la clase String, pero me tope con el inconveniente de que no puede ser heredada, como tampoco se puede usar el class helper con la misma, entonces, la pregunta es...¿Sabe alguien algun truco o modo de Cómo podria aumentarle nuevos metodos a la clase string sin tener que crear una nueva clase y reescribir todo???.2. Trabajando con Delphi .net. puedo ver que cuando uno tiene un variable de tipo TObject (system.Object) tranquilamente uno puede asignarle cualquier clase a la misma sin necesidad de usar un Tipificador (Esto por cuestiones de herencia - Teoria de Objetos). Y pasa lo mismo con la clase Integer ya que si o si necesita Tipificador... alguien sabe por que???Por ejemvarob : system.Object;s: string;L : arrayList;i : integer;BeginOb := s; // Funciona.Ob := L; // Funciona.Ob := i; // NO FUNCIONA.Ob := TObject(i); // FUNCIONA
Última edición por radaalvaro fecha: 27-07-2006 a las 18:18:52. Razón: no se veia bien |
#2
|
||||
|
||||
1. Si la clase esta sellada (sealed o finally en java), no puedes heredarla, ya que justamente para eso existe ese atributo de clase, para evitar lo que quieres lograr.
2. Con respecto a lo segundo: puedes perfectamente asignar un entero a un objeto (al menos en c#). Que error te da el compilador?
__________________
Héctor Geraldino Software Engineer |
#3
|
||||
|
||||
Cita:
Cita:
Discusión original Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#4
|
||||
|
||||
¿Vamos pa'trás?
¡Hola a todos!
Interesantísimo enlace Lepe. Mientras algunos soñamos con expandir la POO incluyéndole herencia insertada, otros comienzan a sellar clases . ¿Qué vendrá después? ¿Clases no selladas a cambio de un pago? Caramba, ¿qué onda con ese atributo? Un abrazo heredable. Al González. |
#5
|
|||
|
|||
Duda 2
Cita:
|
#6
|
||||
|
||||
Creo haberlo probado bien en c# y no me dio ningun error. Supongo que el compilador se queja porque el tipo integer (como decimal, bool y los otros tipos de datos primitivos, excepto string) es un tipo de dato de valor (valuetype) mientras que la clase Object define un dato por referencia (referencetypes vs valuetypes), y al parecer el compilador no hace el boxing automaticamente.
De todas formas existe un mecanismo para lograr lo que quieres, y es haciendo la conversion manualmente. Igualmente, es bueno identificar que existen tipos de datos diferentes (por valor y referencia), y que el compilador (el que sea) puede decidir cuando hacer el boxing/unboxing automatico o exigir al programador que lo escriba.
__________________
Héctor Geraldino Software Engineer |
#7
|
|||
|
|||
Autoboxing
Hola radaalvaro!
En cuanto al punto dos si existe una forma de decirle al compilador de hacer el boxing automatico. En tu codigo pon la siguiente directiva de compilacion: {$AUTOBOX ON} Asi podras asignar un entero a un objeto sin tener que hacer la conversion manualmente. De hecho si te fijas en el codigo generado del BDS, normalmente de forma automatica agrega esa directiva a el codigo, debajo de implementation... Saludos! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
string a Integer | Juanito-Kun | Varios | 4 | 06-10-2005 12:53:43 |
Convertir un String a Integer | Rafe | Varios | 2 | 12-08-2005 17:43:38 |
¿Como pasar de String a Integer? | astur_racing | JAVA | 5 | 13-01-2005 18:58:18 |
de String a Integer!! | kye_z | Varios | 2 | 20-11-2004 20:04:36 |
Pasar String a Integer | ramonibk | Varios | 12 | 09-09-2004 17:20:20 |
|