Self ?
BlitzMax Forums/BlitzMax Beginners Area/Self ?
| ||
Method Allocate:TLED (Position:TBiFloat,Size:Float,Color:TRGB,Shape:TShape,Rotation:Int = 0) Self.TimeSinceChange = 0 Self.Shape = Shape Self.Position = Position.CopyCreate() Self.Color = Color Self.Size = Size Self.Rotation = Rotation Self.IsItOn = False Return Self End Method Question: Does self slow down the compiler, have no effect, or infact make it more efficient? Reason: Ive started to use BLide as my main editor*, and really like the Object popup with all the methods/functions fields that happens when you press . **, And so in my Methods, because Im a bit forgetful I always start the call to a member function with Self. *** I also**** Name all the parameters, with the names of what they are going to be And I would like to know if this is bad practice. * All these people wondering what 3d wrapper/engine to use, and I cannot even decide which ide ;( ** Like in Protean when you press \ to get a field list *** I Dont need to remember anything, Its Brill **** I Have to remember even less, its Brill |
| ||
It would make little or no difference either way - time how long it takes to do a build. The compiled code would be identical I'll wager. |
| ||
Ill Just take you word for it. Thanks Edit: However, I am going to hold you leagally responsable |
| ||
In your code above you don't need to use Self at all, except for the Return. Since you're in a Method, all the fields of the instance of that object are available for direct use. TimeSinceChange=0 would do just the same. Unless maybe you have similarly-named methods in parent type or something that you're trying to avoid? |
| ||
@Angel, I know I dont need them, (Well actualy in the post above I do need them, because the parameters have the same name as the fields), The question is, being that I AM putting them in, would the compiler/Code run better/Worse. |
| ||
No it makes no difference as the compiler makes the same out of it. Its only for specifying the var space if you have similarily named fields / methods |
| ||
Edit: However, I am going to hold you leagally responsable WHY I OUTTA.... ; ) |
| ||
this is giving me a self.headache! |
| ||
You mean other.makeHeadache(self) ? :-) |