Newsgroup: it.comp.lang.delphi
Titolo: Memoria TStringList e TStrings

Cerco di essere più sintetico nella precedente domanda mi sono espresso 
male
A : TStringList
B : TStrings
A := B;
In tal caso Delphi usa sempre la stessa locazione con puntatori e non la 
duplica?
ciao
--- posted by geoForum on 
http://www.delphiedintorni.it

duplica?
Nel tuo esempio le due variabili punterebbero allo stesso oggetto, uso
il condizionale perchè in realtà non credo che tu possa mettere un
TStrings dentro un TStringList.
A parte questo quando devi duplicare un oggetto devi usare il metodo
"Assign".
Ciao

"Assign".
Grazie Alfredo,
Mi interessava proprio che puntassero alla stessa area.
Io assegno
A : TComboBoxEx
B : TStringList
quindi A.Items:=B;
Ma mi domandavo se puntano alla stessa area o visto i tipi differenti 
Delphi effettua un assegnamento che fa derivare due locazioni distinte 
di memoria.


 duplica?
Sì: ciò che stai assegnando è il riferimento all'oggetto, non ne stai 
creando uno nuovo.
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

 TStrings dentro un TStringList.
Ci vorrebbe un "cast" usando *as* oppure "forzato" verificando prima 
l'appartenenza al tipo di riferimento con *is*.


creando uno nuovo.
Grazie,
ho fatto una prova caricando tantissime stringhe ed effettivamente č 
cosě.
ciao :)


l'appartenenza al tipo di riferimento con *is*.
Non avevo letto questo intervento.
Io assegno
A : TComboBoxEx
B : TStringList
quindi A.Items:=B;
E' corretto ?
ciao, spero di non fare domande insensate, sono un VBasic man (per 
contratto)
Ciao
Enrico


>>> ...non credo che tu possa mettere un TStrings dentro un TStringList.
TStringList è derivato da TStrings (vedi classes.pas), quindi tutte le 
proprietà comuni possono essere utilizzate e scambiate.


 proprietà comuni possono essere utilizzate e scambiate.
No, puoi solo assegnare "tranquillamente" un oggetto di tipo 
*TStringList* ad una proprietà di tipo *TStrings*, mentre per il 
contrario - che è il tuo caso ed è ciò a cui si riferiva chi ti ha 
risposto - è opportuno un cast.


 contratto)
Dovresti procurarti comunque un po' di documentazione, per agevolare 
l'apprendimento di Delphi.


 l'apprendimento di Delphi.
Grazie per la delucidazione, è vero, ho il libro di Marco Cantù che sto 
leggendo.


 Cast(MioComboBoxEx.items; MiaStringList);
Virgola, tra i parametri, non punto e virgola.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

>Virgola, tra i parametri, non punto e virgola.
ciao grazie avevo fatto copia e incolla da Help :-)


Ok nn avevo dichiarato la variabile..
Accetto il consiglio di mettermi a studiare un po'
grazie a tutti per avermi aiutato.
Enrico Stafforini


 esclude, normalmente, che vi possano essere buchi grandi come dinosauri.
Mi sa che il caro Enry è una conoscenza già nota...... ;-)


 Mi sa che il caro Enry è una conoscenza già nota...... ;-)
Ma nooo ... il vostro amico e' partito per gli States! 
E voi li', a lavorare per Google ...
:-)
Ciao
ACSH


>Mi sa che il caro Enry è una conoscenza già nota...... ;-)
Ciao :-D Ma forse ci siamo sentiti un anno fa per MS..
http://groups.google.it/groups/profile
?
enc_user=XVWH9A8AAABCd24R74LfKubjPObkCWyY
Il mondo è piccolo, comunque grazie e scusate per il casotto che ho 
combinato. In realtà sbagliavo perchè assegnavo in modo contrario 
rispetto a quello che ho detto con GetTableNames(TStrings,false) da DB.
Il mondo Delphi è comunque molto bello e interessante.
Buon Natale e grazie ancora
Ciiiiiaaaaooooooo :


Però è strana la cosa:
MiaSL : TStringList;
AdoConnection1.GetTableNames(MiaSL,false); (quindi TStrings->TStringList)
quindi NON passo una TStrings ma una TStringList
poi assegno: 
ComboBoxEx.Items:=MiaSL; (quindi TStringList->TStrings)
quindi assegno a una TStrings una TStringList il che per quanto ha detto 
Marco dovrebbe essere corretto.
Non è che GetTableNames fa implicitamente un "cast" ??????


Riporto chiarimento di Andrea preso da delphi e dintorni, se a qualcuno 
interessa.
http://www.delphiedintorni.it/geoxml/forumgetthread
?
groupname=delphiedintorni.it.delphi.generale&messageid=07D70C0C1335083C3@
delphiedintorni.it
&displaymode=all
grazie


 Mi sa che il caro Enry è una conoscenza già nota...... ;-)
Sì, non è molto bravo nei travestimenti. Anche perché ormai i segni di
riconoscimento sono palesi:
1. posta da delphi&dintorni;
2. pone le stesse domande anche lì (segno che non vuole trollare solo qua,
ma anche là);
3. usa cognomi improbabili (gens labo restituisce un "cognome non trovato"
riguardo tale "scafforini");
4. il nick quasi sempre è nuovo (i.e. Google non restituisce risultati per
altri gruppi oltre che questo, che siano antecedenti la data dei post);
5. fa domande sceme su argomenti scemi;
6. all'inizio usa dei modi falsamente gentili, ma senza mancare d'essere
provocatorio con banalità volute, forzati fraintendimenti e falso esame
delle soluzioni; finisce quindi per attirarsi addosso le critiche e poi,
pensando di poter far leva sulle "offese" ricevute, tira fuori la solita
tiritera (divertente) sull'arroganza e sulla busta paga di Google;
7. alla fine di lunghe catene di post sterili si svela: sono il "Troll";
8. delira urlando d'aver beffato tutti, facendoli cadere in una rete, dice
di allontanarsi per poi continuare a postare con il solito nick parallelo
e ricominciare il giro;
Ad libitum. E' come un gioco che ormai si conosce a memoria: noioso :-)


 E voi li', a lavorare per Google ...
Cazz.. devo consegnare la nuova versione del motore di ricerca per
domattina e sto ancora qui a giocare a Call Of Duty!


 e ricominciare il giro;
Acc.. dimenticavo:
9. è solito rispondere più volte a sé stesso;


Ciao,
Stai parlando di me ? Io mi chiamo stafforini con la T :-|
Non centro nulla con il tale "scafforini" di cui parlate.
 
                                ?


Ciao,
Stai parlando di me ? Io mi chiamo stafforini con la T :-|
Non centro nulla con il tale "scafforini" di cui parlate.
 
                            **** 
                           *    *
                           *    * 
                               *
                              *
                              *
                              *
                              *



Confermo.

>Confermo.
Non posso offenderti solo perchè mi hai risolto un problema e aiutato se 
no ti mandavo a cagare !!!!!!!


Rileggendo puņ suonare un po' volgare...
Non volevo offendere nessuno scusate.
Comunque Andrea, Marco, M.Alfredo grazie per i vostri aiuti penso che 
siano di grande valore, tempo/denaro.
Gli angeli custodi esistono.
Ciao.
