Newsgroup: it.comp.lang.delphi
Titolo: Array of Char

Ciao a tutti,
vediamo un pň se qualcuno puň aiutarmi.....
Ho una funzione che accetta un parametro di tipo "array of Char",
fin quando ho usato la funzione passandogli il paramentro in maniera
'statica' ovvero
myFunction(par1, par2, ['a', 'b', 'c']) andava tutto bene....
Poi ho provato a richiamarla cosě :
private
    myArrayOfChar : array of char;
...
...
function .....
begin
     myFunction(myPar1, myPar2, myArrayOfChar);
end;
in compilazione mi segnala che non sono compatibili : Array and dinamic
Array ....
Help me....
Grazie
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Dichiara un tipo cosi':
Type
   MioArray : array of char;
e dichiara la variabile in questa maniera:
Private
    myArrayOfChar : MioArray;
Una domanda... dato che usi array of char non ti è più semplice 
utilizzare il tipo PChar già dichiarato in Delphi?
Ciao,
David

 David


 Che significa "già dichiarato in Delphi" ?
Che il tipo PChar è già dichiarato nelle librerie interne del Delphi 
come PChar = array of char ed è implementato in quasi tutte le funzioni 
che utilizzano stringhe da passare all'ambiente Windows
Ciao,
David

Ho fatto così :
 
Type
   myArray : array of char;
.....
Private
    myArrayOfChar : myArray;
function myFunction(par1 as string; par2 as string; ListChar : array of
char): boolean;
begin
....
end;
Poi ho richiamato la funzione :
     myFunction(par1, par2, myArrayOfChar);
ma il compilatore mi dà questo errore :
Incompatible types :"Array" and "myArrayChar"


Non hai riscritto la dichiarazione della funzione
function myFunction(par1 as string; par2 as string; ListChar : array of 
char): boolean;
deve diventare
function myFunction(par1 as string; par2 as string; ListChar : myArray): 
boolean;
Ciao


e no.... questo non lo posso fare....
La mia funzione è un metodo di una classe, e tale classe (con questo metodo)
viene
utilizzata anche in altre parti del progetto (e di altri progetti)....
Altre possibilità?!?!?
Rino


> Altre possibilità?!?!?
Si una. Dai una dimensione definita alla tua variabile
Esempio:
private
     myArrayOfChar : array[0..500] of char;

 Altre possibilità?!?!?
prova 
http://tinyurl.com/3wuo2
Ciao
-- 
Morde. 
M-List di icld: 
http://it.groups.yahoo.com/group/icld/

Ok, diciamo che ho risolto.... Grazie ad entrambi...;-)
Ma, secondo voi è possibile dichiarare una property come array?
Diciamo, più precisamente un array di costanti?
Sto facendo una classe che ha un metodo che richiama la funzione
precedentemente
nominata....
Oltre all'array di char... io dovrò passare anche un array di costanti
(fanno parte della funzione
richiamata) quindi avevo pensato di fare una PROPERTY di tipo "array of
const" e valorizzarla
con un SetMyArrayConst (myArrayConst : array of const)....
non credo si possa fare ma.... non si sa mai....
voi che mi dite in merito?


No questa proprio no casomai puoi dichiarare array of variant ma non 
avrebbe senso sulle property.
Una property dovrebbe avere un tipo ben definito; casomai se fai 
un'esempio di dati passati nella "array of const" vediamo un po' di 
chiarirci le idee
Ciao,
David

 voi che mi dite in merito?
Per gli array di costanti potresti usare i Set.
http://www.delphibasics.co.uk/RTL.asp?Name=Set


 chiarirci le idee
sono solo stringhe....
Devo dirvi la verità, non sò perchè sono stati utilizzati array of const....
Ma purtroppo non ci posso fare niente come vi ho detto prima....
Ora, secondo voi c'è un modo per fare un CAST di un tipo array of String con
un tipo array of Const?
O, una cosa simile?
