
qwerty
22.05.2017
15:07:44
вопрос в том, стоит делать или нет) Как мне видится, это упрощает понимание того, что должно прийти

Oleg
22.05.2017
15:08:34

Andrey
22.05.2017
15:08:47
как то странно) в каждое объявление вставлять проверки на наличие всего, чего вызывается...)

Oleg
22.05.2017
15:09:05
если ты делаешь перегрузку, и тебе нужно один метод вызвать для одного типа, а другой для другого, то тебе нужно точно указать как вести себя с опр типом

Google

qwerty
22.05.2017
15:09:08

Oleg
22.05.2017
15:10:08
void foo(T)(T a) if(is(typeof(a.len) == size_t)) {}
void foo(T)(T a) if(is(typeof(a.count) == size_t)) {}
типа как-то так

qwerty
22.05.2017
15:10:21
о!
вот это прикольно

Dmitry
23.05.2017
07:42:35
А никто термин: "cherry-picking" не слышал? Как его понять?
пример фразы: "intuitive interface to cherry-picking"

Denis
23.05.2017
07:47:12
а, я в курсе. ща
это про git и подобные.
когда надо один коммит перетащить в другую ветку его "черрипикают" в ту другую ветку
именно не всю историю, а один конкретный
то есть, это не merge

Dmitry
23.05.2017
07:48:25
а в git это сложно?

Denis
23.05.2017
07:48:30
нет

Google

Denis
23.05.2017
07:48:50
вообще, стараюсь такого избегать - толкьо мёрджу

Dmitry
23.05.2017
07:51:30
Кстати, а кто как перебирает возможные сочетания ключей командной строки?
Получается вариант только кучу if, else if городить? Или как-то получше можно?

Denis
23.05.2017
07:51:43
it depends
)
Раз уж оффтопик, какой протокол выбрать для умного дома в 2k17 году?
проводной

Max
23.05.2017
07:54:27

Dmitry
23.05.2017
07:54:42
это да, только сочетаний ключей может быть куча

Max
23.05.2017
07:55:23
Он как раз для кучи и сделан, там всё одной ф-ей описывается.

Eto
23.05.2017
07:55:34
Напиши на ООП с наследованием. Потом плюнь и перепиши на if-else. :)

Dmitry
23.05.2017
07:56:23
просто вдруг есть более красивый\надежный вариант перебора их комбинаций. А то у меня в комбинации из 5 ключей уже ошибки стали всплывать, когда не один ключ указан, другой нет итд

Oleg
23.05.2017
08:00:52

Eto
23.05.2017
08:01:51

Dmitry
23.05.2017
08:02:13
@sigod спасибо, хорошая идея

Denis
23.05.2017
08:02:21
Modbus + CAN может, параллельно... У модбаса что плохо это мастер нужен, не всегда это удобно, но и без него никак - вся промэлектроника на нём

Oleg
23.05.2017
08:05:33
на самом деле лучше ethernet

Denis
23.05.2017
08:05:47
он дороже - свичи дорого стоят

Oleg
23.05.2017
08:06:30
зато максимум универсальности

Denis
23.05.2017
08:06:33
плюс, всякие клапаны-задвижки им не управляются

Dmitry
23.05.2017
08:32:40
А в чем смысл static int ?

Google

Dmitry
23.05.2017
08:33:33
В доке нашел "Это просто означает, что после того, как переменная была инициализирована, она остается в памяти до конца программы."
А если она в классе объявлена то? Пока жив класс?

Oleg
23.05.2017
08:34:21
это как глобальная переменная, только не глобальная)))

Dmitry
23.05.2017
08:34:21
И что будет если объявитть просто int в классе?

Oleg
23.05.2017
08:34:53
в классе это будет статическим полем
к нему можно будет обратиться через имя класса
вне зависимости от существования экземпляров классов

Dmitry
23.05.2017
08:35:46
writeln(MyClass.x) типа так?

Oleg
23.05.2017
08:37:05
можно например счётчик сделать
class A
{
static size_t count;
size_t id;
this() { id = count++; }
}
void main()
{
auto a = new A;
writeln(A.count, " ", a.id);
auto b = new A;
writeln(A.count, " ", b.id);
}
}
count будет расти при каждом создании экземпляров

Denis
23.05.2017
08:48:17

Dmitry
23.05.2017
09:00:01
м... а можно пример реального кейса где статический конструктор полезен?

Dmitry
23.05.2017
09:01:03
Допустим если я к БД подключаюсь. Может имеет смысл его в виде статического конструктора организовать? Или нет?

Andrey
23.05.2017
09:14:05

Dmitry
23.05.2017
09:14:53
ок, а кейс можно какой-то?

Denis
23.05.2017
09:15:41
запуск из static this() модуля
какие-то предопределённые данные например забить в него, которые во время компиляции не удалось поместить (большой объём, например)
а у статических переменных ноги растут из ассемблера. оcтавил в памяти значение - вот она статическая переменная)
При следующем вызове функции это значение там же и будет лежать
Всё просто, короч

Google

Денис
23.05.2017
09:18:41

Denis
23.05.2017
09:20:07
и coverage

Andrey
23.05.2017
09:20:46

Pavel
23.05.2017
09:30:44
То есть там код написан из предположения что количество процессоров не меняется в процессе работы программы :)

Denis
23.05.2017
09:36:10
)

Andrey
23.05.2017
09:44:04
тем, у кого оно меняется, уже не до таких тонкостей)

Denis
23.05.2017
10:03:38
/me видел такие компы есличо
Сейчас пришли к тому что выгоднее резервировать целиком сервер, а не проц в нём

Oleg
23.05.2017
13:47:15
кто-нибудь знает статистику? квартили (медиана в частности) можно расчитать с помощью InputRange?
не хочется выделять память под массив, но чёт сейчас не вижу выхода

Admin
ERROR: S client not available

Денис
23.05.2017
13:52:47

Oleg
23.05.2017
13:54:12
> А как известно, всё рекурсивное - можно сделать итеративно. Итеративно с линейной сложностью - выглядит как возможность успеха.
Хорошее предположение, но проверять я его, конечно, не буду
тк вики даёт алгоритмы только на готовых массивах
типа ты по нему можешь гулять сколько хочешь
это не случай InputRange
и для данной ситуации видимо проще выбрать в массив, отсортировать и взять что нужно

qwerty
23.05.2017
14:22:42
@deviator без сортировки точно не взять, потому что основа формул порядковый номер элемента

Oleg
23.05.2017
14:23:12
ну тогда я спокоен)

Google

Oleg
23.05.2017
14:23:22
и мне не стыдно будет, что я память выделяю)

qwerty
23.05.2017
14:24:04
?

Денис
23.05.2017
14:41:26
Кажется можно без выделения за линейное время
Исходный ряд состоит из 3 частей
Числа меньше медианы, медиана, числа больше медианы
Соответственно храним 3 числа. Значение медианы, максимальное числа чисел меньше её, минимальное число чисел больше неё.

qwerty
23.05.2017
14:42:56

Денис
23.05.2017
14:43:18

qwerty
23.05.2017
14:44:37
Я тоже
хотя нет
то есть надо двигаться по массиву, но как понять что текущий элемент — медиана?
тут вот только что нашел https://stackoverflow.com/a/33965272
@deviator ты уверен, что тебе настолько нужна память? Скорость алгоритма сильно упадет
@andrushaTheSlayer ты подобное имел ввиду?
@andrushaTheSlayer крутой ник))

Денис
23.05.2017
15:00:15
А так правда, если не критично, то я бы выделил массив, зато код понятный будет. Да и 640 килобайт хватит всем!

Denis
23.05.2017
15:12:02
А потом у них видеоплеер 10 гигов жрёт)
и прочая прочая

Oleg
23.05.2017
15:59:57

qwerty
23.05.2017
16:17:48
ммм