Errors, bugs, questions - page 2295

 
Alexey Navoykov:

It's not just about language.

What is it about then? I myself am able to write a few points as aspirations. But I don't think their absence prevents me from creating a TC at the moment. Perhaps I'm looking narrowly, that's why I'm asking.

Virtually only for the sake of cloud optimisation... Well, and partly for Market. But now of course I realize, that it was too high a price to pay (in terms of wasted nerves and time). There are some alternative options of cloud computing, I just can't get it together...

Still, could you give some figures as speed figures for your Tester in mat mode?

Apparently you have some very heavy calculations. Perhaps you're using a GA that you're not happy with.

I myself use custom characters, and full overshoot. Longer than 10 hours I don't spend Optimize. Most often < 10 minutes.


ZS I've probably spent the least amount of nerve. I don't even know where MT5 can make the mats add up. Time - only for self-education, undocumented stuff and bug reports. The current state of MT5 is much better than a year ago. What I really don't like is that the SD requisitions have been killed. I consider it as total disrespect to other people's work. Almost every application is a long localisation of bug with replay. Everything was destroyed, no backups were made.

 

Error during execution

void Print( const int& ) { printf( "%s", __FUNCSIG__ ); }
void OnStart()
{
        const int i = 0;
              int j = 0;
        Print( i ); //(1)
        Print( j ); //(2)
}

Result 1: void Print(const int&)
2: 0

different. What's the difference? The same one was expected.

 
A100:

different. What's the difference? The same one was expected.

For this reason

void f( const int& ) { printf( "%s", __FUNCSIG__ ); }
void f( int& ) { printf( "%s", __FUNCSIG__ ); }
void OnStart()
{
        const int i = 0;
              int j = 0;
        f( i ); //(1)
        f( j ); //(2)
}
 
fxsaber:

For this reason.

What's the connection to my example? Replace Print with Print2 and the result is the same!

If you don't understand, it follows from my example that int i is supposedly unsuitable for Print( const int&)

 
A100:
What is the connection with my example? Replace Print with Print2 and the result will be the same!

Direct connection! Two signatures in the original example. One of which is standard.

By replacing it with Print2, you get only one signature and it will be called twice.

 
fxsaber:

Direct connection! Two signatures in the original example. One of which is a standard one.

And what's your second signature here? Is that it?
void Print( int& )
 
A100:
And what is the second signature here? Is it really like this?

You know yourself that Print is something unparalleled in MQL5 for the user. I gave you an explanation. If you do not like it, feel free.

 
fxsaber:

You know yourself that Print is something unparalleled in MQL5 for the user. I gave you an explanation. If you do not like it, feel free.

It's not an explanation because if (2) were standard, the following example
#define  PRN             { printf( "%s", __FUNCSIG__ ); }
  void Print( const int& ) PRN //(1) //пользовательская
//void Print(       int& )     //(2) //якобы штатная
  void Print(       int& ) PRN //(3) //пользовательская
void OnStart()
{
        const int i = 0;
              int j = 0;
        Print( i );
        Print( j );
}
would have generated an error at the compilation stage: (2) and (3) conflict. But everything compiles and runs normally. And in the initial example, in the absence of void Print(int&), it is void Print( const int&) that should be called instead of the regular void Print(...)
 
A100:
In the initial example, in the absence of void Print(int&), void Print( const int&) should be called instead of the regular void Print(...)

It should not.

Forum on trading, automated trading systems and trading strategy testing

Bugs, bugs, questions

fxsaber, 2018.09.23 17:08

You yourself know that Print is something unparalleled in MQL5 for the user.

I don't see why you should make an issue out of it. The default Print has some strange signature that does not fit into MQL5 capabilities.

 
fxsaber:

It shouldn't.

I don't see why it should be a problem. The built-in Print has a hell of a signature that doesn't fit into MQL5 capabilities.

There is no problem... ... there is an error. I don't understand why you are trying to explain it either. The defaultPrint has the following signature:

and is also able to conflict with other functions (if needed)

Reason: