Newsgroup: it.comp.lang.delphi
Titolo: conversione tipi

Salve a tutto il gruppo, espongo brevemente.
Circa 2 settimane orsono, dopo averlo rinvenuto in un vecchio CDRom pubblicato da una nota rivista, ho installato Delphi6 PE.
Che dire... 
Subito sono rimasto affascinato!
Così, durante una semplice esercitazione, mi sono ritrovato a gestire dei numeri decimali, caricati nelle relative variabili (var valore1, valore2: String) tramite InputBox. Ora, ciò che mi sorprende un pochino, visto la tanto declamata semplicità di Delphi, è il fatto che:
1. i valori vengono trattati come stringa al momento della loro generazione;
2. per poterli utilizzare nelle operazioni aritmetiche vanno convertiti in numero (StrToFloat)
3. e ancora, per visualizzare il risultato di queste in un controllo come TEdit o TStringGrid, si debba convertire ancora in stringa (FloatToStr).
Il tutto utilizzando delle variabili d'appoggio che raddoppiano il numero di quelle effettive.
Ho capito bene o mi sfugge qualcosa?
Ma allora dov'è la semplicità?
Forse con altri linguaggi tutto questo si può evitare, considerata la rigidità di Delphi nel trattare i tipi di dati...
Una piccola spiegazione, grazie a chi vorrà spendere un po' del suo tempo.
-- 
Questo articolo e` stato inviato dal sito web 
http://www.nonsolonews.it

 Ma allora dov'è la semplicità?
Onestamente, non ho capito la domanda, ma sono senz'altro certo del 
fatto che "trattare pere come mele", quindi senza convertire un dato in 
un altro, non è senz'altro indice di semplicità, quanto più di estrema 
confusione e pratica che porta senz'altro facilmente ad errori logici.
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

Una piccola spiegazione, grazie a chi vorrà spendere un po' del suo tempo.
Non si capisce bene che cosa ti si dovrebbe spiegare...

Usa gli "altri linguaggi, chi te lo vieta?
Anche tu non sei obbligato a rispondermi.
Grazie dell'attenzione.
Ciao


Anche tu non sei obbligato a rispondermi.
Ma lo sto facendo e il mio consiglio può rivelarsi più utile di quel
che ti sembri: se un linguaggio diverso da Delphi ti sembra più
semplice e adatto a te, usalo. 
p.s.: hai il newreader maleducato. Dovresti impostare il "taglio"
della riga non oltre la 72esima colonna.

 a te, usalo.
Ruby mi attrae parecchio.
Ti ringrazio infinitamente dei consigli Andrea, è proprio vero ciò che si dice.. il confronto non può che arricchire le persone.
p.s.: non utilizzo nessun newreader maleducato. Posto dalla pagina del sito.


è laborioso in termini di tempo e di produttività. 
Non si tratta propriamente di "conversioni di tipi". Si tratta
semplicemente di acquisire un input che viene scritto
(necessariamente) in delle caselle di testo. Nulla ti vieta di
derivare un componente da TCustomEdit, farlo diventare TNumberEdit e
pubblicare una proprietà TextValue del tipo che vuoi.

 Ma allora dov'è la semplicità?
Prova a imparare il C++, e lo scoprirai :-)

Al principio ho creduto ingenuamente che le operazioni con numeri fossero dirette sui campi edit.
Ma ora è tutto più chiaro.
Come ultimo esperimento, ho provato a sommare i valori contenuti in
due edit mettendo il risultato in un terzo edit: 
Edit3.Text := FloatToStr(StrToFloat(Edit1.Text) + StrToFloat
Edit2.Text));
Ringrazio tutti perl'aiuto e l'incoraggiamento.
Ciao. Island


rigidità di Delphi nel trattare i tipi di dati...
Come quasi tutti i linguaggi compilati (ed in particolare il Pascal), 
Delphi è sì piuttosto rigido nel trattare i tipi di dati. Questo è un 
vantaggio perché non essendoci conversioni implicite, è impossibile 
passare dati "sbagliati", e tutto viene controllato quando compili, non 
quando esegui.
Inoltre le operazioni sono molto più veloci proprio perché non ci sono 
controlli a runtime (sono già stati fatti prima) e il compilatore può 
scrivere codice ottimizzato per le operazioni.
Esiste comunque il tipo Variant, che al prezzo di essere un po' più 
inefficiente in termini di memoria occupata e velocità di esecuzione 
permette di memorizzare qualsiasi tipo di dato.
Ci sono poi linguaggi, in particolare quelli interpretati, che sono 
più "liberi", di solito al prezzo di essere più lenti e soggetti ad 
errori run-time.
Dipende da cosa devi fare. Per creare velocemente applicazioni native 
per Windows Delphi (con qualche componente in più per semplificare 
alcune cosette) è tra i migliori strumenti sul mercato, però al di là 
dell'apparente semplicità di "draggare" dei controlli sulla finestra 
richiede un po' di conoscenza dell'Object Pascal sul quale è basato.
Se cerchi invece un linguaggio molto semplice e di "bocca buona" quando 
scrivi codice (di solito al prezzo di molte grattate di testa a 
runtime...) allora ce ne sono altri più adatti a te.
--- posted by geoForum on 
http://www.delphiedintorni.it