Static member variables

BlitzMax Forums/BlitzMax Programming/Static member variables

jamesmintram(Posted 2005) [#1]
Hi everyone, I have recently bought Blitzmax and ive been trailing through the docs + online wiki.

There are a few questions you may be able to answear:

From what I can gather function pointers are possible, how?

Is it possible to have static data members for a type?

How hard is it to read custom types within other languages such as c/c++?

Are variables in Blitzmax such as integers and strings simple variables, or are they like .NET variables, all inherited from various other objects with extra baggage?

Is there any form of type casting? Example in c:

int *memlocation = (int*)0xff;

I think thats enough for now, thank you very much!!

P.S is there going to be any GUI modules released by BlitzResearch? If so are they going to be free?


Beaker(Posted 2005) [#2]
I can answer some of those:

Function pointers:
Local blah()

blah = func1
blah

blah = func2
blah

Function func1()
Print "1"
End Function

Function func2()
Print "2"
End Function

Static Data Members:
Type blah
Global thing#
End Type


Integers/Floats in BlitzMax are simple variables. Strings are objects.

A GUI module is in the works. I think I'm right in saying that it won't be free.


Michael Reitzenstein(Posted 2005) [#3]
Type casting:

int *memlocation = (int*)0xff;

Becomes
Local MemLocation:Int Ptr = Int Ptr( $ff )



jamesmintram(Posted 2005) [#4]
Ok, thank you very much :D You have both helped me a lot!


Dreamora(Posted 2005) [#5]
sidenote on function pointers: They are typesafe, so if you want to assign a function reference to an "agent", make sure that they have the identical declaration or it will fail.