@ProCxx

Страница 2195 из 2477
Anatoly
12.07.2018
11:40:46
Pavel
12.07.2018
11:47:47
AddressSanitizer: heap-buffer-overflow у этого djbsort. у когонибудь получилось завести?

Alexander
12.07.2018
11:49:20
Pavel
12.07.2018
12:50:46
хм, зараза. если накидать простенькую программу то всё работает. неработает только когда я её в своего монстра встраиваю

Google
Pavel
12.07.2018
12:51:46
конечно же нет

но до этого всё работало

Alexander
12.07.2018
12:51:52
или там какие-то странные вещи выплывают?

Pavel
12.07.2018
12:52:19
санитизер говорит что djbsort срет за кучу

Alexander
12.07.2018
12:52:38
а продебажить можешь?

Pavel
12.07.2018
12:52:53
да там какойто ад

Alexander
12.07.2018
12:53:05
я исходники не смотрел ?

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

Pavel
12.07.2018
12:54:10
"пью, не помогает"

https://github.com/yekm/bench/blob/master/tasks/simple_sorting/djbsort/avx2/sort.c#L348

вот тут. transpose он вызывает из самого конца int32_sort

попробуй пойми чо там происходит

Google
Aidar
12.07.2018
13:03:11
Будет ли ослабление свитча по тем же правилам что и Кастомные типы в шаблонах(неявный оператор<=>)?

Pavel
12.07.2018
13:06:02
вобщем если там оставить временный массив на стеке и не давать ему слишком большого буфера то всё работает

а если делать calloc/free то валится

подозрительно

в 2.3 раза быстрее pdqsort при 100к элементов

тю. я в calloc не умею.

развел тут шухер

Антон
12.07.2018
13:20:32
@ProQt
а есть @ProWx?

Maksym
12.07.2018
13:20:48
Антон
12.07.2018
13:21:59
типа pro.wxwidgets

Maksym
12.07.2018
13:22:13
сомневаюсь

Anton
12.07.2018
13:23:20
я думаю можно и сюда спросить

Антон
12.07.2018
13:23:57
выше спрашивал

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

хотя метод в родительском классе - virtual

магия

Mikhail Voronov
12.07.2018
13:48:09
может где-нибудь срезка происходит?

Антон
12.07.2018
13:48:38
передача идёт по ссылке

Google
Антон
12.07.2018
13:49:41
моего или родительского?

Mikhail Voronov
12.07.2018
13:49:46
там TransferFromWindow и Clone точно в единственной перегрузке у родителя и нужными сигнатурами? У Вас просто override у них нет

Антон
12.07.2018
13:50:08
я ставил override

не ругается

https://github.com/wxWidgets/wxWidgets/blob/master/include/wx/validate.h вот код родительского класса

https://gist.github.com/usernameak/4156a0fa891cfc6c6570304012550e60

а вот моего

Mikhail Voronov
12.07.2018
13:52:11
а весь проект можно посмотреть?

Антон
12.07.2018
13:53:33
ща пушну

Ilia
12.07.2018
13:53:59
не ругается
А метод-то какой?

Constantine
12.07.2018
13:54:04
а кто их вообще должен вызывать?

Антон
12.07.2018
13:54:21
а кто их вообще должен вызывать?
внутри wxWidgets вызывается

Constantine
12.07.2018
13:54:45
внутри wxWidgets вызывается
т.е. если метод класса не вызывается, существуют возможности вроде "вызывается не на объекте класса"

Антон
12.07.2018
13:55:17
https://github.com/wxWidgets/wxWidgets/blob/950b1a9d517e16c443fec7005888582f3354e25e/src/common/wincmn.cpp#L2114 вызывается тут, если точнее

Ilia
12.07.2018
13:55:27
Какой метод?

Антон
12.07.2018
13:55:47
у меня?

Constantine
12.07.2018
13:55:58
потрачено

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

Ilia
12.07.2018
13:56:55
bool wxWindowBase::TransferDataToWindow() -- там сложно сс игнатурой ошибиться...

Антон
12.07.2018
13:56:58
окно вызывает мой Clone() а дальше глохнет

Google
Антон
12.07.2018
13:57:14
я ж специальне дебаг принты воткнул

Ilia
12.07.2018
13:57:23
Ну отладчик бери и по шагам, по шагам...

Антон
12.07.2018
13:57:48
ай это ж еще сырцы вх качать

Ilia
12.07.2018
13:59:55
virtual bool OnDo(wxValidator* validator) wxOVERRIDE { if ( !validator->TransferToWindow() ) { wxLogWarning(_("Could not transfer data to window")); #if wxUSE_LOG wxLog::FlushActive(); #endif // wxUSE_LOG return false; } return true; }это ооп головного мозга, ящетаю...

Лямбды для кого придумали?

Constantine
12.07.2018
14:00:23
Лямбды для кого придумали?
Возможно это разрабатывали во времена С++03

Антон
12.07.2018
14:00:26
Лямбды для кого придумали?
там же под компат с C++98 заточено

Ilia
12.07.2018
14:00:45
А зачем?

Надо так?

Не ну... если надо...

Антон
12.07.2018
14:01:47
это уже не цпп

это уже цп какое то

Ilia
12.07.2018
14:03:40
при дальнейшем ковырянии выяснилось, что почему то вызывается метод родительского класса O_o
Ну т.е. ты хочешь сказать, что вместо bool wxWindowBase::TransferDataToWindow() вызывается метод предка этого класса?

Антон
12.07.2018
14:03:54
нет.

вместо WDEdCBBitValidator::Transfer{To/From}Window() вызывается метод предка этого класса

Mikhail Voronov
12.07.2018
14:05:02
а как ты это проверил?

Антон
12.07.2018
14:05:07
gdb

Серж
12.07.2018
14:05:07
кастишь небось, через сишные касты, негодник

Constantine
12.07.2018
14:05:29
Антон
12.07.2018
14:05:33
да нет, implicit cast

Google
Ilia
12.07.2018
14:06:00
Я запутался

Антон
12.07.2018
14:06:15
https://gist.github.com/usernameak/b275e38ada65adb3f0544f210bd8e663 вот как я его использую

Constantine
12.07.2018
14:07:09
Я запутался

Ilia
12.07.2018
14:07:11
а сигнатуру конструктора wxCheckBox дай

а сигнатуру конструктора wxCheckBox дай
Ты его по значению туда пихаешь. ЛИбо по ссылке

Constantine
12.07.2018
14:08:15
const wxValidator &validator=wxDefaultValidator

Ilia
12.07.2018
14:08:19
Если по значению, тогда хана

Антон
12.07.2018
14:08:31
http://docs.wxwidgets.org/3.1/classwx_check_box.html в доке есть

по ссылке

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