Новая версия платформы MetaTrader 5 build 3320: Улучшения и исправления - страница 18

 
Сам так не пишу. Не допускаю совпадения имен полей и входных параметров методов (и внутренних переменных). Возможно, где-то такая возможность (без warning) может пригодиться, не сталкивался. Поэтому сам плохо представляю принципиальность отстаивания именно такого варианта.
 
fxsaber #:
Сам так не пишу. Не допускаю совпадения имен полей и входных параметров методов (и внутренних переменных). Возможно, где-то такая возможность (без warning) может пригодиться, не сталкивался. Поэтому сам плохо представляю принципиальность отстаивания именно такого варианта.

А как пишете? Ваш вариант?

Через префикс? - тогда представьте что у Вас префикс this, а не m_  - что то принципиально поменялось?

Придумываете принципиально другое имя для той же сущности? А зачем усложнять?

class A {
    int   a;
public:  
    A(int b) { a=b; }
};
 

музыкой невеяло, вспомнилось, любопытный выстрел в ногу:

class Foo: public Parent {

Foo(int alpha):Parent(alpha) {

   /// more code

   this.alpha=alpha;

}

public:

   int alpha; 

};

 
A100 #:

А как пишете? Ваш вариант?

class A {
    int   a;
public:  
    A(int ia) { this.a=ia; } // i - целочисленный, d - вещественный, s - строка и т.д.
//    A(int ia) : a(ia) {} // самый частый вариант.
};
 

Уважаемые разработчики! Прошу рассмотреть к реализации такое удобство в пользовании оптимизатором: возможность множественного присвоения значения сразу нескольким параметрам, выделяем по Shift или Ctrl ячейки параметров (стартовое значение, шаг, конечное значение) и устанавливаем значение.

Сейчас это сделать невозможно, а было бы удобно если параметров много.

 

2022.08.03 20:52:28.321 Terminal MetaTrader 5 x64 build 3377 started for MetaQuotes Software Corp.

2022.08.03 20:52:28.322 Terminal Windows 7 Service Pack 1 build 7601, 8 x AMD FX-8350 Eight-Core, 18 / 31 Gb memory, 14 / 499 Gb disk, admin, GMT+3

При двойном клике в тестере на шапку окна

Так же перестало работать изменение ценовой шкалы при нажатии на неё и движении мыши - очень нужная вещь!

Ну и при максимальной скорости прокрутки - скорость черепашья стала - прошу поправить!
 
Aleksey Vyazmikin #:

2022.08.03 20:52:28.321 Terminal MetaTrader 5 x64 build 3377 started for MetaQuotes Software Corp.

2022.08.03 20:52:28.322 Terminal Windows 7 Service Pack 1 build 7601, 8 x AMD FX-8350 Eight-Core, 18 / 31 Gb memory, 14 / 499 Gb disk, admin, GMT+3

При двойном клике в тестере на шапку окна

Так же перестало работать изменение ценовой шкалы при нажатии на неё и движении мыши - очень нужная вещь!

Ну и при максимальной скорости прокрутки - скорость черепашья стала - прошу поправить!

А не поверите - это мой код все эти баги вызывает...

 
fxsaber #:

Посмотрел Ваш вариант - но не понял зачем для той же сущности коверкать имя префиксом. И тем более не понял, почему

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

Новая версия платформы MetaTrader 5 build 3320: Улучшения и исправления

fxsaber, 2022.08.03 14:57

Сам так не пишу. Не допускаю совпадения имен полей и входных параметров методов (и внутренних переменных). Возможно, где-то такая возможность (без warning) может пригодиться, не сталкивался. Поэтому сам плохо представляю принципиальность отстаивания именно такого варианта.

Я отстаиваю элементарную логику: если сущность та же, а в случае

this.a = a;

очевидно, что та же - у нее должно быть тоже имя и должны быть веские причины, чтобы его изменить (пусть даже и с помощью префикса). Как Вы пришли к такому решению? Если бы Вы this не ставили - тогда понятно - можно перепутать член и параметр или переменную. А с Вашим this я не понимаю необходимость такого усложнения на пустом месте, тем более, что С++ компилятор (с настройками по умолчанию, т.е. начальный уровень) в моем примере никаких warning не выдает, т.е. даже потенциально никакой проблемы не существует

 
A100 #:

из недавнего читанного, лучше и не скажешь:

https://habr.com/ru/company/ispmanager/blog/680504/

 
Igor Makanu #:

из недавнего читанного, лучше и не скажешь:

https://habr.com/ru/company/ispmanager/blog/680504/

Цитата оттуда:
  • В Java под Android из-за неудачного решения одного мужика из Google названия полей классов m_camelCase, а в такой же java здорового человека просто используется camelCase

Где то я это m_ уже видел

Только вот зачем навязывать неудачные (по цитате) решения на уровне компилятора?!
Причина обращения: