@ProCxx

Страница 732 из 2477
Michael
02.04.2017
01:00:50
это развлечение для тру хакерман элиты

а никсы это так, энтри-левел

Alexander
02.04.2017
01:01:27
Во. Folding Expressions
это не оно

Alex Фэils?︙
02.04.2017
01:01:49
это не оно
Не тот пример привел?

Google
Michael
02.04.2017
01:01:50
каждый раз ору когда на F1 мсдн вместо рефренса выдает "вас приветствует вижуал студио"

ну дратути.

Alexander
02.04.2017
01:01:58
pair a = {''d", 10}; // pair<char, int>
это авто вывод параметра шаблона. А folding expressions - это про распаковку же ?

Taylor
02.04.2017
01:02:31
но я так и не понял зачем это нужно

Michael
02.04.2017
01:11:15
Ошибся. есть try_emplace
в общем, можно записать это вот таким элегантным ванлайнером

sub_content &sc = (*subs.try_emplace(gf->Filename).first).second;

на первый-второй расчитайсь

Alex Фэils?︙
02.04.2017
01:11:55
Норм

Michael
02.04.2017
01:12:36
только писать я так конечно не буду

лучше две нормальных строчки

наткнулся на интересную проблему

щас изложу

Google
Michael
02.04.2017
01:36:57




длина



и панчлайн



результат ресайза!

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

причем вот это это редкий случай и я не понимаю условий

понимаю только что пожалуй все-таки не стоит лезть в строку без причины

Alex Фэils?︙
02.04.2017
01:40:48
кстати. ты писал пример кода с ресерв, реад и ресайз. это не очень, кмк

мб сразу ресайз сделать, чтоб точно быть уверенным, что пойнтер норм будет?

Michael
02.04.2017
01:41:18
я так и сделал

вариант с резервом не работал (хоть и должен работать корректно, аллоцироваться в нужном месте)

в результате я их полноценно инициализирую, забиваю нулями wstr_t id(0x44, 0); wstr_t val(0x400, 0);

но как видишь все равно что-то странное проиходит

хотя постой

это не ошибка в ресайзе

сайз верный

это какие-то конченые символы в строке

Google
Michael
02.04.2017
01:42:36
я понял

очень и очень странно

выглядит как баг, если честно. и баг не у меня

смотри, что происходит после ресайза

размер ставится на желаемый

(56)

но строка то ли реаллоцируется то ли не знаю что с ней происходит

Alexander
02.04.2017
01:45:10
полный код покажи плиз

Michael
02.04.2017
01:45:13
и в новом буфере действительно нет нужных символов, она обрезана

да на скрине все что можно знать об этом

короче похоже мне не стоит пытаться лезть в строку, где-то рассинхрон: буфер обрезается до предыдущей длины про ресайзе

а не до текущей указанной

Alex Фэils?︙
02.04.2017
01:48:32
короче похоже мне не стоит пытаться лезть в строку, где-то рассинхрон: буфер обрезается до предыдущей длины про ресайзе
параметр функции ресайз задает не дельту для изменений, а сам конечн размер строки

Michael
02.04.2017
01:48:41
ну само собой

короче я кажется понял фикс

интуитивно

ща проверю

я понял как она себя ведет

ес.

я добавил в конце итерации id.resize(id.capacity()); val.resize(val.capacity()); это решает проблему

Google
Michael
02.04.2017
01:53:53
я не уверен, почему это происходит, но если новая строка больше предыдущей, оно во время ресайза зануливает на дельту

возможно, чтобы устранить мусор

так вот оно зануливает то, что я в память ей всадил

в следующий раз не буду делать такие вещи, буду пользоваться нормальным буфером

Alex Фэils?︙
02.04.2017
01:57:30
мне кажется, что ты сам ее ресайзишь обратно в меньшую херь. но я уже чот вообще не соображаю, поэтому решил заняться обезьянней деятельностью (правлю html в пулл-реквесте на сайт procxx.github.io)

Michael
02.04.2017
01:57:52
если я ресайжу ее в 56 а она мне тримит строку до 12

то наверное нет

12 - ее предыдущая длина

так вот после resize(56) она приобретает size() == 56

НО обрезает строку до 11 + нуль-терминатор

Alex Фэils?︙
02.04.2017
01:59:04
ок. приведи, плз, весь сниппет, мб найдем решение поизящнее

Michael
02.04.2017
01:59:39
решение поизящнее - нехер писать в c_str() строки :))

Alex Фэils?︙
02.04.2017
02:00:06
да, для этого сделали .data()

Michael
02.04.2017
02:00:22
wait what...

сразу мог сказать :))

Both string::data and string::c_str are synonyms and return the same value.

ноуп, одно и то же.

Alex Фэils?︙
02.04.2017
02:01:08
почти

лан, я спать пойду, доброй ночи

Google
Michael
02.04.2017
02:01:56
доброй ночи

сделал буфер и больше не выпендриваюсь

wstr_t id; wstr_t val; for (uint32_t i = 0; i < numEntries; i++) { file->read((char*)WCS_BUFFER, 0x44 * sizeof(wchar_t)); id.assign(WCS_BUFFER); file->read((char*)WCS_BUFFER, 0x400 * sizeof(wchar_t)); val.assign(WCS_BUFFER);

Alex Фэils?︙
02.04.2017
02:13:09
А как было?

Michael
02.04.2017
02:56:34
мне отфорвардить в третий раз?

спи уже

desu
02.04.2017
08:22:36
Чета все спят

Oleg
02.04.2017
08:34:29
0x44 * sizeof(wchar_t) Что за магия с 0x44?

Michael
02.04.2017
08:37:36
ОЙ КОНСТАНТУ НЕ ОБЪЯВИЛЬ

desu
02.04.2017
08:37:41
ну протокол какойто

Michael
02.04.2017
08:37:41
ОЙ ПЛЯХОЙ МАЛЬСИК((9

desu
02.04.2017
08:38:06
фигачит магическими числами

мужик

Aldar
02.04.2017
08:45:20
https://www.youtube.com/watch?v=LgbSYxf9vT4&index=1&list=PLUxuJBZBzEdxzVpoBQY9agA8JUgNkeYSV

обзор 3д движка на С++, мож кому надо

Даниил Горелов
02.04.2017
09:02:17
/stat@combot

Combot
02.04.2017
09:02:17
combot.org/chat/-1001031904034

Страница 732 из 2477