Функция - Метод сортировки массива структур. Приз 10$ - страница 7

 
Artyom Trishkin:

1) Для вас это пара десятков каких-то непонятных строк.
для меня же - десятки рабочих дней, которые всецело ушли на локалицаю обнаруженных проблем, их воспроизведение,  описание, поиск обходных путей, так же не забываем о перетестировании при выходе нового билда и создании отчета, что бы ни чего не потерялось... 


2) О прошении улучшений:

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

Sergey Dzyublik, 2019.05.23 13:52

Предложения:
 "Разрешить функции ArrayCopy копировать классы и "сложные" структуры, аналогично тому как структуры предоставляют функционал deep copy для любого типа объекта".


3) О делиться наработками:

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

Sergey Dzyublik, 2017.11.05 13:08

Проблема: есть наработки за год фриланса, разные нестандартные фишки с WinApi и тд... полезные для сообщества. 
Но тратить время на их поиск, обработку, выкладку в кодобазу не вижу смысла - профита 0.

Предложение: предоставить в кодобазе кнопку "Поблагодорить", с помощью которой можно будет при желании задонатить автору в качестве благодарности определенную сумму за предоставленный код. 
Деньги ложатся на MQL счет, в свою очередь MQ изымает определенный процент за предоставляемый сервис.

 
Sergey Dzyublik:

1) Для вас это пара десятков каких-то непонятных строк.
для меня же - десятки рабочих дней, которые всецело ушли на локалицаю обнаруженных проблем, их воспроизведение,  описание, поиск обходных путей, так же не забываем о перетестировании при выходе нового билда и создании отчета, что бы ни чего не потерялось... 


2) О прошении улучшений:


3) О делиться наработками:

  1. Не скажу, что не понятных, но не относится к теме. Простите, а кто вас принуждает? Вам приказал кто-то всем этим заниматься? Или сами? Если сами, по своей воле, то зачем жалуетесь - вас никто не принуждал.
  2. Вот и хорошо. Я видел. Иногда разработчикам виднее почему есть запрет на то или иное "улучшение". И бывает по ряду причин, о которых рядовому "юзеру" не догадаться.
  3. От того, что они у вас пылятся на дальней полке наверное смысла гораздо больше - уйти в забвение быстрее получится. А ведь имя - тот же профит.
    Где-то тут на форуме вам уже писали "Мыслите глубже".
 

Кто бы сомневался. Все, что неудобно читать, удаляется.

Высказываться можно только избранным. Корректность высказывания оценивается модератором в зависимости от настроения и погоды.

Общайтесь сами с собой.

 
Artyom Trishkin:
  1. Не скажу, что не понятных, но не относится к теме. Простите, а кто вас принуждает? Вам приказал кто-то всем этим заниматься? Или сами? Если сами, по своей воле, то зачем жалуетесь - вас никто не принуждал.
  2. Вот и хорошо. Я видел. Иногда разработчикам виднее почему есть запрет на то или иное "улучшение". И бывает по ряду причин, о которых рядовому "юзеру" не догадаться.
  3. От того, что они у вас пылятся на дальней полке наверное смысла гораздо больше - уйти в забвение быстрее получится. А ведь имя - тот же профит.
    Где-то тут на форуме вам уже писали "Мыслите глубже".
  1. Человек пытается сделать этот мир лучше и у него это получается, за что ему и спасибо.
  2. -
  3. Вот честно, если завтра Сергей выложит в кодобазу нормальные контейнеры, с итератором, с макросом, обеспечивающим логику range-based for, какой процент местного сообщества это поймет и оценит? А вот времени он на это убил... Поэтому и продвигаются такие вещи, на голом энтузиазме, в год по чайной ложке. А вот тут бы разработчикам и привлечь людей копейкой малой или не очень, глядишь и нормальные контейнеры появятся и много чего еще интересного...
 

Vladimir Simakov:

Вот честно, если завтра Сергей выложит в кодобазу нормальные контейнеры, с итератором, с макросом, обеспечивающим логику range-based for, какой процент местного сообщества это поймет и оценит? А вот времени он на это убил... Поэтому и продвигаются такие вещи, на голом энтузиазме, в год по чайной ложке. А вот тут бы разработчикам и привлечь людей копейкой малой или не очень, глядишь и нормальные контейнеры появятся и много чего еще интересного...

все есть и все работает - пишите статью и получите вознаграждение, на удивление, Метаквоты довольно лояльны к тематике статей

или о чем идет речь? о взрыве оваций? 

имхо, "нормальность" программного решения, штука не подлежащая оценке, можно про краткость кода, про читаемость, про индуский код, про г..окод писать пытаясь оценить творение, но , имхо, есть обоснованный критерий оценки - востребованность, но к сожалению, эта оценка будет доступна после публикации.

пусть публикует бесплатно в КБ или пишет статью, "а не выделывается как девочка"

 
Igor Makanu:

все есть и все работает - пишите статью и получите вознаграждение, на удивление, Метаквоты довольно лояльны к тематике статей

или о чем идет речь? о взрыве оваций? 

имхо, "нормальность" программного решения, штука не подлежащая оценке, можно про краткость кода, про читаемость, про индуский код, про г..окод писать пытаясь оценить творение, но , имхо, есть обоснованный критерий оценки - востребованность, но к сожалению, эта оценка будет доступна после публикации.

пусть публикует бесплатно в КБ или пишет статью, "а не выделывается как девочка"

Тебе надо тему с начала прочитать,похоже ты судишь по последним постам написанными не Сергеем.
 
Igor Makanu:

или о чем идет речь? о взрыве оваций? 

О том, что придолбались на ровном месте к человеку, который ответил по теме и с рабочим кодом.
Упомянул, что потратил много часов на написание и проверки, поэтому не выкладывает дополнительные плюшки? Ну да, скряга, нужно банить к чертовой бабушке.

Вообще все в порядке было с темой, пока модератор со своим видением ситуации не пришел.

ps: странно, второе сообщение не удалил.

 

да читал я топик с первого дня

вопрос решен, но не так как может применить топикстартер исходя из своего опыта

про "зажать код" - тут все просто - ты или делишься или не делишься....есть, еще модераторское "обратитесь во фриланс" - в прошлом году видел в топике вопросы MQL5 )))

если кто не помнит, то уже 2020, и 99% решения элементарных задач находятся в свободном доступе, а на форум обращаются люди,чтобы сэкономить время или получить недостающие знания, но никак не за трогательными и поучительными историями с нравоучениями... чем, МЫ тут сейчас и занимаемся )))

 

К сожалению сейчас даже те методы которые предложил fxsaber перестали работать.

И я ищу методы сортировки массива структур. Есть у кого то рабочие Варианты ?

 
Vladimir Pastushak:

К сожалению сейчас даже те методы которые предложил fxsaber перестали работать.

И я ищу методы сортировки массива структур. Есть у кого то рабочие Варианты ?

Лично я написал себе давно уже класс CStructWrapper, пронаследованный от CObject (CMyObject - это, фактически, тоже самое, с дополнительными отладочными полями), и для сортировки использую стандартную функцию.

template <typename T>
class CStructWrapper:public CMyObject
{
protected:
   T  m_tObject;

public:
   CStructWrapper() {};
   CStructWrapper(T & tObj) { m_tObject = tObj; };
   ~CStructWrapper() {};

   // Копирование
   T CopyFrom(const T &tObj) { m_tObject = tObj; return (m_tObject); };
   T operator=(const T &tObj) { return (CopyFrom(tObj)); };
   T CopyFrom(const CStructWrapper<T> &tWObj) { m_tObject = tWObj.GetCoreObject(); return (m_tObject); };
   T operator=(const CStructWrapper<T> &tWObj) { return (CopyFrom(tWObj)); };

   // Возврат объекта   
   T GetCoreObject() const { return(m_tObject); };
};


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

Создаваемые объекты могут напрямую копироваться из структур с помощью оператора присваивания. Если надо - копирую.