Jump to content

Re-declaring AutoIt Constants locally


donnyh13
 Share

Recommended Posts

Hi All,
I have a general question about re-declaring AutoIt Constants in a local scope. In a UDF I have created I have from time to time needed to use a flag

for built-in AutoIt functions, such as StringStripWS, or UBound. Instead of using magic numbers I have vouched for using the

corresponding flag, but instead of including the necessary Include, I have declared an Identically named Constant locally in the

function, such as the following:

func _SomeFunc($sFile)
Local Const $STR_STRIPLEADING = 1

    $sFile = StringStripWS($sFile, $STR_STRIPLEADING)

EndFunc

Is this a bad idea?

I was wanting to avoid having to have a pile of Includes for the UDF if it wasn't necessary.

LibreOffice UDF  ; Scite4AutoIt Spell-Checker Using LibreOffice

Spoiler

"Life is chiefly made up, not of great sacrifices and wonderful achievements, but of little things. It is oftenest through the little things which seem so unworthy of notice that great good or evil is brought into our lives. It is through our failure to endure the tests that come to us in little things, that the habits are molded, the character misshaped; and when the greater tests come, they find us unready. Only by acting upon principle in the tests of daily life can we acquire power to stand firm and faithful in the most dangerous and most difficult positions."

 

Link to comment
Share on other sites

18 minutes ago, donnyh13 said:

Is this a bad idea?

I was wanting to avoid having to have a pile of Includes for the UDF if it wasn't necessary.

I usually do this when I use few constants but if I use more functions and constants I include the whole UDF. If this is a bad idea? It really depends. If there is a function that is called every second it's not the best way. I hope to see soon in AutoIt implemented local static constants, so we can have something like this:

Func Test()
    Local Static Const $MB_OK = 0
    ...
EndFunc

 

Edited by Andreik
Link to comment
Share on other sites

Thanks @Andreik, that sounds about the same as what I had in mind.

Ya, a static constant would be handy in this situation.

LibreOffice UDF  ; Scite4AutoIt Spell-Checker Using LibreOffice

Spoiler

"Life is chiefly made up, not of great sacrifices and wonderful achievements, but of little things. It is oftenest through the little things which seem so unworthy of notice that great good or evil is brought into our lives. It is through our failure to endure the tests that come to us in little things, that the habits are molded, the character misshaped; and when the greater tests come, they find us unready. Only by acting upon principle in the tests of daily life can we acquire power to stand firm and faithful in the most dangerous and most difficult positions."

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...