|
|
||||||
|
#1
|
|
|
|
|
da una stringa chi è più veloce secondo voi?
ciao Grazie. mb |
|
|
|
#2
|
|
|
|
|
> da una stringa chi è più veloce secondo voi?
Beh, basta provare no? :-) Nota: CInt esiste per retro-compatibilità e viene tradotto dal compilatore con Conversion.ToInteger (una classe del compilatore di VB). Conversions.ToInteger è circa il doppio più veloce rispetto a Integer.Parse. -------------------------------------------------------------- Dim numS As String = "123" Dim num As Integer Dim stopWatch As New Stopwatch() Dim time1 As Double Dim time2 As Double Dim times As Integer = 100000 stopWatch.Start() For i As Integer = 0 To times num = CInt(numS) Next stopWatch.Stop() time1 = stopWatch.ElapsedTicks / times stopWatch.Start() For i As Integer = 0 To times num = Integer.Parse(numS) Next stopWatch.Stop() time2 = stopWatch.ElapsedTicks / times Dim winner As String = String.Empty If (time1 < time2) Then winner = "CInt" ElseIf (time1 > time2) Then winner = "Integer.Parse" Else winner = "Pair" End If Console.WriteLine(" CInt: {0}", time1) Console.WriteLine("Integer.Parse: {0}", time2) Console.WriteLine(" Winner is: {0}", winner) -------------------------------------------------------------- > ciao Grazie. Prego! ;-) |
|
#3
|
|
|
|
|
> Nota: CInt esiste per retro-compatibilità...
Falso, fa parte del linguaggio VB e continuerà ad esserlo. Per il resto, questo post di Paul Vick e MSDN chiariscono ogni dubbio: http://www.panopticoncentral.net/arc...5/31/1100.aspx http://msdn2.microsoft.com/en-us/lib...zy(VS.80).aspx Per quanto riguarda la frase "As a rule, you should use the Visual Basic type conversion functions in preference to the .NET Framework methods such as ToString(), either on the Convert class or on an individual type structure or class." io la penso in maniera diversa preferendo una generale "armonia" verso il framework rispetto a piccoli miglioramenti in termini di performance. |
|
#4
|
|
|
|
|
>> Nota: CInt esiste per retro-compatibilità...
> Falso, fa parte del linguaggio VB e continuerà ad esserlo. Ok, ma queste "keyword" sono un'anomalia di VB.NET perchè vengono poi tradotte in chiamate a metodi di classi del Framework o delle library di VB. Probabilmente se VB.NET non venisse da VB (è un se enorme :-D) non esisterebbero. > Per il resto, questo post di Paul Vick e MSDN chiariscono ogni dubbio: > [..] > [..] > > Per quanto riguarda la frase "As a rule, you should use the Visual Basic > type conversion functions in preference to the .NET Framework methods such > as ToString(), either on the Convert class or on an individual type > structure or class." io la penso in maniera diversa preferendo una > generale "armonia" verso il framework rispetto a piccoli miglioramenti in > termini di performance. Condivido :-). |
|
#5
|
|
|
|
|
> Ok, ma queste "keyword" sono un'anomalia di VB.NET
> perchè vengono poi tradotte in chiamate a metodi > di classi del Framework o delle library di VB. Se guardi con reflector non è vero. Non sono semplici wrapper e anche il tipo di argomenti è differente. La CInt per esempio chiama la double.parse e fa altre cose > Probabilmente se VB.NET non venisse da VB > (è un se enorme :-D) non esisterebbero. Secondo me invece si. Non per niente il namespace my è nato con vb.net |
|
#6
|
|
|
|
|
Matteo Migliore was thinking very hard :
> Probabilmente se VB.NET non venisse da VB > (è un se enorme :-D) non esisterebbero. A Milano si dice "Se mio nonno avesse le ruote sarebbe un tram..." Se VB.NET non avesse il my, il supporto a COM e a XML 100.000 volte più semplice rispetto a C# e tante altre cose, non sarebbe VB.NET. Tutto il resto sono "amiche di pippo"... :-D |
|
#7
|
|
|
|
|
Ciao Lorenzo,
You wrote : > Tutto il resto sono "amiche di pippo"... :-D ROTFL, troppo un grande! |
|
#8
|
|
|
|
|
> A Milano si dice "Se mio nonno avesse le ruote sarebbe un tram..."
Perchè ha già l'obliteratrice, è arancione etc...? :-D > Se VB.NET non avesse il my, il supporto a COM e a XML 100.000 volte più > semplice rispetto a C# e tante altre cose, non sarebbe VB.NET. E sì che cerco minuziosamente di evitare risposte che generino sequele di post, ma non ci riesco :-D. > Tutto il resto sono "amiche di pippo"... :-D I miei amici non si chiamano come me, perchè quelli di pippo sì? :-D |
|
#9
|
|
|
|
|
>> Ok, ma queste "keyword" sono un'anomalia di VB.NET
>> perchè vengono poi tradotte in chiamate a metodi >> di classi del Framework o delle library di VB. > > Se guardi con reflector non è vero. > Non sono semplici wrapper e anche il tipo di argomenti è differente. > La CInt per esempio chiama la double.parse e fa altre cose Sì, ho guardato con Reflector, ma se l'argometo è una stringa sì può chiamare direttamemte un metodo di conversione appropriato. *Personalmente* quello che non mi piace è la difformità di VB rispetto a C#, non la sintassi ovviamente, sennò uno dei due linguaggi andrebbe eliminato. Poi, come già detto molte volte, ognuno usi il linguaggio che più lo aggrada. >> Probabilmente se VB.NET non venisse da VB >> (è un se enorme :-D) non esisterebbero. > > Secondo me invece si. Non per niente il namespace my è nato con vb.net Mah, servirebbe la sfera di cristallo, che permetta di mutare i flussi temporali anche passati, quindi una versione 2.0 o 3.0 della sfera di cristallo :-). |
|
#10
|
|
|
|
|
> Sì, ho guardato con Reflector, ma se l'argometo
> è una stringa sì può chiamare direttamemte > un metodo di conversione appropriato. Quello che scrivevo è che non sono semplici wrapper ma fanno altre cose. > *Personalmente* quello che non mi piace > è la difformità di VB rispetto a C#, > non la sintassi ovviamente, sennò uno > dei due linguaggi andrebbe eliminato. Questo è un discorso che risale ad almeno dieci anni fa. L'utente tipo di vb.net si chiama "Mort" mentre quello di C# si chiama "Elvis". http://www.nikhilk.net/Personas.aspx Mort è l'utente opportunistico che vuole la soluzione veloce e in questo senso vb.net è perfetto. Se ci fossero meno differenze tra i linguaggi probabilmente non avrebbe senso mantenerne due tra vb e C#. > Poi, come già detto molte volte, ognuno > usi il linguaggio che più lo aggrada. Beh questo è chiaro, mica ti obbligano :) >> Secondo me invece si. Non per niente il namespace my è nato con >> vb.net > > Mah, servirebbe la sfera di cristallo, che permetta > di mutare i flussi temporali anche passati, quindi > una versione 2.0 o 3.0 della sfera di cristallo :-). Il namespace my e quelle feature sono volute in vb, proprio perché, secondo MS, l'utente tipo di VB è Mortimer (così suona meglio :) ). |
|
#11
|
|
|
|
|
Matteo Migliore pretended :
> I miei amici non si chiamano come me, > perchè quelli di pippo sì? :-D Io non parlo dei pippi :-D |
|
|
| Discussioni simili | |
| CInt per eccesso Buongiorno a tutti, ho un problema con il mio programma, sto cercando una funzione di conversione che mi faccia la conversione in intero per eccesso, ovvero per esempio con... |
|
| Cint di sic. risolta : ) Il mio amoruccio, mica faidateista di professione e nemmeno per hobby, è riuscito a disincastrare la cintura di sicurezza spingendo verso l'esterno il portello... |
|
| Cint di sicur.incastrata in portiera M'è successo un guaio! Non so come, ma questa mattina chiudendo la portiera posteriore scorrevole della kangoo, è rimasta incastrata la cintura di sicurezza del sedile... |
|
| Parse error: parse error, unexpected T_STRING in ... on line 7 Sarà la calura estiva... ma dove caspita è questo parse error? Se commento le linee dalla 4° alla 7° tutto va bene. <? session_start(); // Inzializza le... |
|
| CInt e Type mismatch? O_o Ciao Ragazzi, Guardate qui: CardMonth = CInt( Request.Form( "MeseScadenza" ) ) Mi dice: Type Mismatch : CInt. |
|
|
Tutti gli orari sono GMT. Attualmente sono le 09:47. | Privacy Policy
|