[Gambas-user] VB to Gambas conversion question
nando
nando_f at ...951...
Sat Jul 28 21:10:17 CEST 2012
Not a cast
It is Forced Double at compile time.
0 is usually interpreted when compiled as 0 (integer)
0.0 would be interpreted as non-integer
0# same thing but forces the representation as double.
Reason behind doing this:
if you have a double array t#(0..25)
when you do
t#(I) = 0
The zero compiles to an integer.
at RUNTIME, it has to convert to double....which takes more cpu cycles.
So, 0# forces the compile to a double..at compile time.
at RUNTIME, no convesion....less cpu cycles.
It would make a difference with many converstions over a long time
or if the program was very intense doing this type of stuff.
Smarter compilers would realize the immediate value is being assigned to
a double and coerce the immediate to double at compile time.
---------- Original Message -----------
From: wally <wally at ...2037...>
To: mailing list for gambas users <gambas-user at lists.sourceforge.net>
Sent: Sat, 28 Jul 2012 15:36:31 +0200
Subject: [Gambas-user] VB to Gambas conversion question
> what does "0#" mean in VB ?
>
> e.g.
>
> ReDim t#(0 To 25)
>
> If (i < 10) Then t(I) = 0#
>
> is this some kind of casting zero to Double ?
>
> thanks in advance
> wally
>
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and
> threat landscape has changed and how IT managers can respond. Discussions
> will include endpoint security, mobile security and the latest in malware
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
------- End of Original Message -------
More information about the User
mailing list