It turns out that the variable mrequest={1} is initialized on global level, but the program does not see values of its initialized fields for some reason. The compiler does not complain too.
Renat: You have initialised the first member of the structure with one and the rest with zero by default.
Got it. I found the explanation in the Reference Manual: "There must be at least one value in the initialization sequence: the first element of the corresponding structure or array is initialized with this value, missing elements are considered zero".
I meant that one and the one with the .chm extension
https://www.mql5.com/files/docs/mt5/mql5/chm/mql5_russian.chm
https://www.mql5.com/files/pdf/mql5_russian.pdf
It shows and it does not blush. May be I am boiling?
ArrayGetAsSeries
Removing the lid, turning off the fire.
Thank you.
1 leaked strings left
I figured it out, it's the initialization mode of MQLTradeRequest request structure.
If we initialize it this way:
then"1 leaked strings left" does not appear.
If initialization is carried out from the OpenPosition() function to the global level, the memory record appears:
Regarding the second option. Trying to figure it out, I found the following code:
Returns:
2012.05.07 10:52:10 papaclass4 (USDCAD,M1) Global: mrequest.price=0.0
It turns out that the variable mrequest={1} is initialized on global level, but the program does not see values of its initialized fields for some reason. The compiler does not complain too.
You have initialised the first member of the structure with one and the rest with zero by default.
1 leaked strings left
I figured it out, it's coming from the way MqlTradeRequest structure is initialized.
If we initialize it this way:
then"1 leaked strings left" doesn't appear.
If we move initialization from the OpenPosition() function to the global level, the memory record appears: