Size: a a a

AI Cups Official

2020 November 11

DD

Dmitry Dolgopolov in AI Cups Official
Егор Сергеев
this не перепишется, ибо не хранится
ну в смысле не сам this, а vtbl_ptr
источник

ЕС

Егор Сергеев... in AI Cups Official
Если бы я такое делал, то там было бы поле unsigned char b[sizeof(T)], и b везде вместо this. Скорость та же, надежность больше
источник

ЕС

Егор Сергеев... in AI Cups Official
Dmitry Dolgopolov
ну в смысле не сам this, а vtbl_ptr
Ну да, но там сейчас нет virtual, поэтому его тоже нет
источник

DD

Dmitry Dolgopolov in AI Cups Official
это в тестовом примере нету, а кто его знает, как оно в коде)
источник

ЕС

Егор Сергеев... in AI Cups Official
Dmitry Dolgopolov
это в тестовом примере нету, а кто его знает, как оно в коде)
Я думаю, если он такое делает то должен понимать, что virtual делать не надо
источник

ЕС

Егор Сергеев... in AI Cups Official
Dmitriy
есть несколько структур разного размера (8-16-32-64 bit), которые хранят внутри набор флагов или данных и я хочу обращаться к ним, как к обычной переменной
Такая штука, кстати, очень напоминает битовые поля, если я правильно понял, что нужно. Можно делать что-то такое:
struct foo {
     unsigned flag:1;
     unsigned other_flag:1;
     unsigned data_with_5_bits: 5;
    ....
};
источник

A

Andrey in AI Cups Official
Егор Сергеев
Как мне кажется там может быть даже полностью полностью определенное поведение. Но надо курить стандарт
Вроде бы ок, если val_T_bit<T> содержит только один нестатический член типа T (в листинге выше это не показано), то удовлетворены требования для type aliasing'а val_T_bit<T> и T. Но все равно очень стремно делать такое.
источник

ЕС

Егор Сергеев... in AI Cups Official
Ну, в стремности этого я даже не сомневаюсь. Тут чисто теоретический интерес, UB это или не UB
источник

A

Andrey in AI Cups Official
Хотя... "AliasedType is an aggregate type or a union type which holds one of the aforementioned types as an element or non-static member (including, recursively, elements of subaggregates and non-static data members of the contained unions): this makes it safe to obtain a usable pointer to a struct or union given a pointer to its non-static member or element." Судя по концовке, можно получить (и разыменовать, например) указатель на объект по его члену, а не наоборот
источник

AC

Anton Chikin in AI Cups Official
Привет. А старые конкурсы RAIC сейчас вообще нельзя посмотреть? Все скрыто в преддверии нового чемпионата?
источник

D

Dmitriy in AI Cups Official
Егор Сергеев
Такая штука, кстати, очень напоминает битовые поля, если я правильно понял, что нужно. Можно делать что-то такое:
struct foo {
     unsigned flag:1;
     unsigned other_flag:1;
     unsigned data_with_5_bits: 5;
    ....
};
это и делаю
источник

ЕС

Егор Сергеев... in AI Cups Official
Dmitriy
это и делаю
Хм, а зачем тогда все эти конструкции с шаблонами?
источник

D

Dmitriy in AI Cups Official
чтоб не с каждым флагом по переменной работать а обращаться, как к числу и проверять по заранее нужным комбинациям
источник

ДС

Дмитрий Сураев... in AI Cups Official
Anton Chikin
Привет. А старые конкурсы RAIC сейчас вообще нельзя посмотреть? Все скрыто в преддверии нового чемпионата?
К сожалению да, как бы логи не потерли, были там интересные моменты
источник

IM

Igor Melnikov in AI Cups Official
Alexander N
полюбому можно разных фич накрутить. Пока я основу раскручиваю по скорости на сколько возможно в C#
Какой ник на CG?
источник

A

Andrey in AI Cups Official
Dmitriy
чтоб не с каждым флагом по переменной работать а обращаться, как к числу и проверять по заранее нужным комбинациям
Не совсем то, что ты хочешь. Но может когда-нибудь пригодится)  https://en.cppreference.com/w/cpp/utility/bitset
источник

AN

Alexander N in AI Cups Official
Igor Melnikov
Какой ник на CG?
источник

IM

Igor Melnikov in AI Cups Official
О, скоро догонишь)
источник

AN

Alexander N in AI Cups Official
Igor Melnikov
О, скоро догонишь)
Ты тоже на шарпе, круто. У меня мечта/цель обойти все шарпы и явы. Не знаю, получится ли.
источник

IM

Igor Melnikov in AI Cups Official
Alexander N
Ты тоже на шарпе, круто. У меня мечта/цель обойти все шарпы и явы. Не знаю, получится ли.
Передо мной только один чел на шарпе остался)
источник