Ошибки, баги, вопросы - страница 3482

 

fxsaber #:

где можно почитать о причинах такого изменения языка в C++17?

В комментариях к стандарту C++17. "Я открыл Вам бесплатный доступ в поиск Google"(ц)

 
Slava #:

В комментариях к стандарту C++17. "Я открыл Вам бесплатный доступ в поиск Google"(ц)

Если уже видели - дайте знать ссылкой.

 
A100 #:

itself #import is not an obstacle to calling a function, otherwise .dlls without const would not work either - but they do:

but we're talking about something else:

На самом деле, "const" - это конструкция компилятора. Он не входит в двоичный код. Экспортируемые функции DLL не имеют "const". ex5 является пропиатарным, поэтому в объявлении импорта может храниться "const".

 
Dominik Egert #:

На самом деле, "const" - это конструкция компилятора. Он не входит в двоичный код. Экспортируемые функции DLL не имеют "const". ex5 является пропиатарным, поэтому в объявлении импорта может храниться "const".

Вопрос в том, почему f1() вызывается без ошибки? Он тоже объявлен как const

    void f1( const string = "1" );

Изначально имеем два варианта одного и того же (!) кода. В (1) случае - единым .mq5 файлом, во (2) случае - через #import

А результат - разный! Что Вы можете сказать по сути изложенного: Код - не одинаков? Тогда в чем принципиальное отличие!? Код некорректный? Тогда почему компилятор не сообщил об этом?

 
Ошибка при выполнении:
struct A { int a; };
struct B : A {
    B() {}
    B( const B& b ) : A(b) {}
};
void OnStart()
{
    B b1;  b1.a = 1;
    B b2 = b1;
    Print( b2.a );
}

Результат:   0

Ожидалось: 1

 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ошибки, баги, вопросы

A100, 2024.02.02 08:08

struct A { int a; };
struct B : A {
    B() {}
    B( const B& b ) : A(b) { Print(__FUNCSIG__); } // Почему это компилируется?
};
void OnStart()
{
    B b1;  b1.a = 1;
    B b2 = b1; // Почему здесь вызывается B( const B& b ) ?
    Print( b2.a );
}

Возникли вопросы.

 
fxsaber #:

Возникли вопросы.

Как видите ошибок при компиляции нет - значит все нормально

 
A100 #:

Как видите ошибок при компиляции нет - значит все нормально

Вроде, должна быть ошибка компиляции.

 
fxsaber #:

Вроде, должна быть ошибка компиляции.

Я за то, чтобы довести эту конструкцию до рабочего состояния с ожидаемым результатом

 
Какое принятое название у показателя "Максимальная продолжительность просадки "?
Причина обращения: