Как реализовать естественный алгоритм сортировки в C ++?

В данном посте я покажу как можно отсортировать смешанные данные, т.е. строки, которые содержат числа, слова, даты и.т.д.

Допустим у нас имеется файл содержащий данные в виде:

34 Jack 2016-01-22
43 Oliver 2016-01-23
3 Charlie 2016-01-20
7 Harry 2016-01-19
78 Alfie 2016-01-22
13 Thomas 2016-01-22
32 Joshua 2016-01-11
21 William 2016-01-08
17 James 2016-01-25
2 Amelia 2016-01-26
54 Daniel 2016-01-22
33 Lily 2016-01-17
11 Emily 2016-01-22

то есть каждая строка содержит цифры и слова. Нам надо отсортировать данный список по порядку так чтобы все строки содержащие цифры шли по возрастанию.
Стандартные методы сортировка естественно не подходят, но способ всё-таки есть — это натуральная сортировка.

Читать далее Как реализовать естественный алгоритм сортировки в C ++?

Как вызвать метод класса Form из другого класса?

Решил сделать простенькую программу, которая вычисляет из числа с плавающей запятой целую и дробную часть, но столкнулся с тем, что стандартные методы типа Convert.ToDouble или Double.TryParse на этапе компиляции вызывают исключения. Оказалось, что вся эта белиберда связана с тем, что в ОС Windows в настройках, разделителем целой и дробной части (см. рисунок ниже) выступает запятая, а я пихал числа с разделителем точка! Такие вещи прокатывали в Delphi, но не в C#.

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

Читать далее Как вызвать метод класса Form из другого класса?

Поиск подстроки в richTextBox. Редактирование найденных строк.

Допустим есть текстовый файл содержащий логины и пароли в следующем порядке:
первая строка будет содержать логин, а вторая строка пароль, т.е. логин всегда выше пароля на одну строчку.

Читать далее Поиск подстроки в richTextBox. Редактирование найденных строк.