Diese Seite mit anderen teilen ...

Informationen zum Thema:
Forum:
WinDev Forum
Beiträge im Thema:
4
Erster Beitrag:
vor 3 Jahren, 5 Monaten
Letzter Beitrag:
vor 3 Jahren, 5 Monaten
Beteiligte Autoren:
Yogi Yang, Peter Holemans, Marc De Swert

Data type neutral variables

Startbeitrag von Yogi Yang am 13.01.2015 11:30

Hello All,

I have observed that when we create Procedures we can declare Variable (as Parameters) without any data type like for example:

PROCEDURE MyProper(LOCAL MyStr, LOCAL MyMode is boolean)

But I am not able to declare variables in any Procedure without any data type associated with them!

So how can I declare variables that are Data Type neutral?

TIA

Yogi Yang

Antworten:

variabeleNeutral is variant ?

von Marc De Swert - am 13.01.2015 12:05
Hi Yogi,

Use the keyword "Let"... This will type the variable based on the type that is being passed. Next you can test the type using the TypeVar() function.

E.g. (Out of my head - So untested):

FUNCTION MyFunction(LET pAnyVariableType) //or FUNCTION MyFunction(LOCAL LET pAnyVariableType)

SWITCH TypeVar(pAnyVariableType)
CASE wlString: Info("String")
CASE wlInt: Info("Integer")
OTHER CASE: Info("Some other type")
END


Cheers,

Peter H.

Quote
Peter H.
FUNCTION MyFunction(LET pAnyVariableType)

ADD-ON
Sorry, misread your question... If you are obliged to type variables that can be anything (I don't see the need except when doing interop or writing extremely generic code) then I don't see any other option than using the 'variant' data type as stated by one of our co WX developers above.

Cheers,

Peter H.

von Peter Holemans - am 13.01.2015 21:30
Thanks for the hint.

It means I will have to use Variant DataType for variables.

I will test it soon.

TIA

Yogi Yang

von Yogi Yang - am 15.01.2015 05:56
Zur Information:
MySnip.de hat keinen Einfluss auf die Inhalte der Beiträge. Bitte kontaktieren Sie den Administrator des Forums bei Problemen oder Löschforderungen über die Kontaktseite.
Falls die Kontaktaufnahme mit dem Administrator des Forums fehlschlägt, kontaktieren Sie uns bitte über die in unserem Impressum angegebenen Daten.