![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#3
|
||||
|
||||
|
Hola,
Cita:
De todas formas es posible que sea más costoso un "case" que usar "if". Y, digo yo, que, probablemente pudiera hacerse lo que el compañero necesita de otro modo, sólo que así sin más datos... no es posible adivinar cómo es que se plantea lo que dice necesitar. Si se quiere liar la cosa... y tal vez a costa de que todo resulte más costoso, podríamos preparar un "conjunto" que "emparejar" a un "Array de strings", de modo que pudiera quedarnos algo como lo de más abajo... que puede ser una tremenda tontería, fruto de llevar toda la noche picando código y sin dormir, y el que avisa no es traidor. ![]() Pero, vengamos al caso, o al "case", como queráis. Declaramos un conjunto tal que así:
Y preparamos un "Array de strings" que estará "emparejado" con el tipo de más arriba:
Ahora, podemos preparar un procedimiento que requiera una cadena, de modo que en el mismo podamos comprobar con qué elemento del conjunto se "empareja". Acto seguido usaremos una variable del tipo del "conjunto" para determinar el "caso" correspondiente a la cadena en cuestión:
El tema está en que al procedimiento "DoStringCase" le pasamos un "string" como parámetro, de modo que, en el ejemplo, se ejecutará el "ShowMessage()" correspondiente a dicho "string", en realidad al elemento del conjunto que emparejamos con el "string":
Pero,... creo que después de esto ya me puedo echar a dormir... Sinceramente, es probable que haya otras formas de hacer lo que se plantea el compañero. Aun habiendo escrito lo anterior, dudo mucho que algún día lo utilizase... pero, en fin, ahí queda, por si puede servir de algo.PD. Tiene el inconveniente principal de tener que añadir tantos elementos al "conjunto" como sean precisos... y hacer lo propio con el "Array de string" correspondiente. Por no mencionar otra vez el posible costo de llevar a cabo el "bucle for", a continuación el "case"... y el resto de defecos que se os ocurran. ![]() Última edición por dec fecha: 26-10-2007 a las 08:49:43. |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Función para strings | Jesús Pena | Varios | 4 | 26-04-2007 01:48:33 |
| case con strings | molinero1 | Varios | 1 | 23-04-2007 13:34:24 |
| Punteros Strings | jlrbotella | OOP | 7 | 01-03-2007 17:46:39 |
| Herramienta case para diccionario de datos de base de datos firebird | mcalmanovici | Firebird e Interbase | 1 | 11-02-2007 15:17:37 |
| showmessage y strings | Elfoscuro | Varios | 1 | 19-04-2005 20:00:03 |
|