
Игорь
26.05.2017
12:21:20
Всем хао.
Подскажите, как правильнее/предпочтительнее:
Есть класс Trie (нагруженное дерево/дерево префиксов), не сжатое, соответственно метод Add (рекурсивно обрабатывает строку, добавляя узлы в Trie). В каждом конечном узле, соответствующему слову, должны быть данные, среди которых <Map> и один счётчик. Собсно вопрос в следующем - это нормально тащить <Map> через метод Add или лучше держать в классе статические поля для хранения текущих значений (данных)? Или есть ещё какой-нибудь вариант получше.
Сейчас метод выглядит так:
void Add(const string &str, int ptr = 0);
Тащить:
void Add(const string &str, map<T1, T2> Data, int ptr = 0);
Ну, по ссылке, а не по значению, конечно*
Т.е. аргумент, который будет присутствовать во всех вызовах и участовать только когда слово полностью обработается.

Google

Tema
26.05.2017
12:25:51

Игорь
26.05.2017
12:26:44
В том-то и вопрос, хочу ли я этого. :D

Tema
26.05.2017
12:26:50

Игорь
26.05.2017
12:27:12
В принципе, кол-во вызовов этого метода будет равно длине строки + 1.

Denis
26.05.2017
12:27:22
Или ты про метод, который будет один узел с буквой добавлять?

Игорь
26.05.2017
12:28:55

Denis
26.05.2017
12:30:28
Ну ты же можешь делать как душе угодно. Как альтернативный вариент — не тащить данные, а получить указатель на лист, в которые потом запишешь данные

Tema
26.05.2017
12:30:42
я бы сказал получить во владение уник поинтор

Denis
26.05.2017
12:31:20
{
auto listNode = Add( my_string );
listNode->map = myDataMap;
listNode->counter = myDataCounter;
}
В упрощённом виде, естественно

Tema
26.05.2017
12:32:06

Google

Tema
26.05.2017
12:32:15
я ваще думал тут у нас ООП

Игорь
26.05.2017
12:32:42
По сути мапу я буду заполнять из файлика, поэтому есть вариант ещё тащить/хранить в статике дескриптор (ifstrem) файлика и при необходимости (как только последняя буква строки добавиться) начать считывать из него (файлика) и заполнять мапу.

Denis
26.05.2017
12:33:35
Это уже жесть точно

Игорь
26.05.2017
12:34:02
Согласен.
А вариант с возвратом указателя интересный, хм.

Denis
26.05.2017
12:34:48
Да вообще в статике что-то хранить только чтобы не передавать аргументом в один метод, который рекурсивный будет — тоже жесть
Если так надо, то можно ещё один класс сделать.
{
MyTmp tmp( data, this );
tmp.recursion( string );
}

Игорь
26.05.2017
12:39:39
Больно понравился вариант с возвратом указателя. Спасибо.

Berkus
26.05.2017
13:11:22

Antony
26.05.2017
13:58:10
Проверьте пожалуйста у кого стоит MinGW или MinGW-w64: если ли у вас файл unwind.h и находит ли его MinGW при #include <unwind.h> ?

reagentoo
26.05.2017
14:02:36
Ух-ты, Полухин здесь))

Anton
26.05.2017
14:03:20

reagentoo
26.05.2017
14:03:23
Больше рефлексии, больше Полухиных))

Anton
26.05.2017
14:07:43

Antony
26.05.2017
14:08:27
Есть.
А какой у вас MinGW? Компилятор этот файл видит?

Anton
26.05.2017
14:08:37
MinGW-w64 6.3
Сейчас попробую скомпилить файл с ним

Antony
26.05.2017
14:17:54
А вот такое компилит ?
#include <backtrace.h>
int main() {
backtrace_state* state = backtrace_create_state(
0, 1, 0, 0
);
(void)state;
}

Anton
26.05.2017
14:26:11
А вот backtrace не находит

Google

Antony
26.05.2017
14:26:44
Это грустно. Спасибо за помощь!

Alex Фэils?︙
26.05.2017
14:54:07

Vladislav
26.05.2017
16:53:03

Дед Пегас
26.05.2017
16:57:00

Alexander
26.05.2017
16:57:33
у кого-нибудь есть оыпт Conan на проде?
а то наконец-то двинулся поезд от SVN к Git, и вынуждены искать способ руления зависимостями

Berkus
26.05.2017
17:10:13
до прода оно даже не добралось

Alexander
26.05.2017
17:10:31
и что может посоветуете взамен? потому что мне на локальной машине понравилось, но то было грузить пакеты с conan.io, а не со своего сервера

Berkus
26.05.2017
17:11:04
я не смог там найти нужных пакетов, а собирать сам заебался

Alexander
26.05.2017
17:11:16

Alexander
26.05.2017
17:11:25
и что же Вы искали?

Berkus
26.05.2017
17:11:40
вспомнить бы еще сейчас

Admin
ERROR: S client not available

Alexander
26.05.2017
17:12:26
если чего-то нет на conan.io, всегда можете сами собрать и залить. А если очень сильно хотите помочь, то настройте под эту либу (если она опенсурс, конечно), CI (не так сложно сделать это с трэвисом и appveyor), и оттуда уже можно лить релизы на conan автоматически

Berkus
26.05.2017
17:12:35
Conan.io moves to JFrog Bintray!
We are happy to announce support for Conan repositories in JFrog Bintray letting you create any number of personal Conan repositories for your C/C++ packages.
а вот это хорошая новость, не знал. возможно станет повеселее

Alexander
26.05.2017
17:12:41
опыт для своих поделок у меня есть, и он исключительно хороший
меня интересует именно на проде. Так как мы будем держать свой сервер с бинарями. И конаном оттуда выгружать

Google

Alexander
26.05.2017
17:13:34
вот что интересует

Berkus
26.05.2017
17:13:35

Alexander
26.05.2017
17:14:16

Berkus
26.05.2017
17:15:43
если юзает - значит ему ок. я посмотрел поиском сейчас - вроде бы добавили несколько пакетов которых мне не хватало, типа beast, но я не все проверил

Alexander
26.05.2017
17:16:56

Berkus
26.05.2017
17:19:18
ну мне пока хватает брю и мавена, но хочется в итоге чего-то более нативного для плюсов

Алена
26.05.2017
19:17:09
Подскажите пожалуйста, есть ли книги по плюсам (или др.) не переведенные на русский или с очень плохим переводом. Желательно не больше 500 страниц.

Alex Фэils?︙
26.05.2017
19:52:15
Коллеги, кто завтра идет в антикафешку – отметьтесь, чтобы я знал примерно, сколько народу будет.
Результаты:
? (2): mymedia AlexFails
? (3): sudo97 veselcraft SOJALEI
❔ (0):

Berkus
26.05.2017
20:36:03
https://twitter.com/vreshetnikov/status/867529685923647492

Vladislav
26.05.2017
20:36:54

Square
26.05.2017
22:12:10
Тензор юзает конан. Осталось найти кого нить оттуда :)
Они его хвалили, но немного рассказали

Vladislav
26.05.2017
22:20:26
Тензор - это проапгреженый ООО Вектор?
http://lurkmore.to/%D0%9E%D0%9E%D0%9E_%C2%AB%D0%92%D0%B5%D0%BA%D1%82%D0%BE%D1%80%C2%BB

Tema
26.05.2017
22:20:46

Vladislav
27.05.2017
06:31:36
https://github.com/tonybeltramelli/pix2code/blob/master/README.md

Tom
27.05.2017
10:35:09
Товарищи, предполагаю, все знакомы с Ranges TS. А было бы интересно иметь что-то подобное в compile time? Типа
constexpr int xs[] = {1, 3, 5, 2, 4};
constexpr int ys[] = {1, 2, 3};
static_assert(
(xs | sort(std::less<void>{}) | subset(0, 3))
== ys
);

Александр
27.05.2017
10:36:20
конечно

Google

Александр
27.05.2017
10:36:34
hana'у же юзают, а это как крутое расширение