@ProCxx

Страница 2198 из 2477
Igor
13.07.2018
12:44:15
фашизм просто нужно правильно готовить, тогда от него сплошная выгода и качественный код получается ^.^ но этой проверке место где-то в стайл-чекере, да, от рефлексии в компилтайме скорее потребуется assert(is_noexcept(f)), и прочее assert(is_pure_virtual(f) && variables.empty())

Vergil
13.07.2018
12:44:33
Господа! Подскажите как реализуется Delay Load library совместно с mingw w64

чот информации по этому поводу вообще ноль в гугле

Google
Dmitry
13.07.2018
12:52:27
Этому место конечно в священных войнах, но вообще без войн было бы интересно узнать, статистически, программисты C++ продолжают пользоваться snake_case или выше уровнем только Camel или смесь?

Ilia
13.07.2018
12:52:31
на заводах и нии полно плюсовиков, в Самаре полно заводов и нии, все сходится
Блин, я по поводу плюсовиков с заводов ... ОЧЕНЬ ЗЛОЙ В ПОСЛЕДНЕЕ ВРЕМЯ!

Серж
13.07.2018
12:53:31
Qt программисты - не с++ программисты

Ignat
13.07.2018
12:53:55
интересное заявление

Ilia
13.07.2018
12:54:16
snake_case
Я так люблю snake case, но всё время пишу в camel , как на проклятой Java!

Qt программисты - не с++ программисты
Давай так: Не все Qt программисты - с++ программисты!

Ilia
13.07.2018
12:55:42
Давай так: Не все Qt программисты - с++ программисты!
А то я теперь вот на Qt как раз программирую... Ну ты понял вобщем!

Alex
13.07.2018
12:57:07
Народ, не подскажете, как называется объект (свойство объекта), который можно побитово скопировать без проблем?

Google
Побитый
13.07.2018
12:57:17
PascalCase one love❤️

Олег
13.07.2018
12:57:34
Есть POD — Plain Old Data, может, оно?

AmiK
13.07.2018
12:57:45
camelCaseIsTrue()

Alex
13.07.2018
12:58:27
trivially copyable?
Во, точно, спасибо!

Ilia
13.07.2018
12:58:33
Есть POD — Plain Old Data, может, оно?
Нет, не оно. POD с указателем внутри на свою часть -- и привет!

Побитый
13.07.2018
12:58:36
trivially copyable?
этого не достаточно же!

Ilia
13.07.2018
12:58:49
trivially copyable?
Нененене это тоже не то

Ignat
13.07.2018
12:59:55
ну видимо в общем случае по типу этого нельзя понять, не обладая высокоуровневой информацией о его устройстве

Max
13.07.2018
13:00:57
этого не достаточно же!
Пишут, достаточно. https://en.cppreference.com/w/cpp/types/is_trivially_copyable "Objects of trivially-copyable types are the only C++ objects that may be safely copied with std::memcpy"

Ignat
13.07.2018
13:01:59
— А эти ягоды можно есть? — Можно. Только потом умрёшь.

Max
13.07.2018
13:02:47
Можно и не умереть, если правильно приготовить.

Крис
13.07.2018
13:03:23
Интересно, а как же реализовать рефлексию без макросов?

Max
13.07.2018
13:04:00
Интересно, а как же реализовать рефлексию без макросов?
Пока что только дополнительным препроцессингом, к сожалению.

Google
Max
13.07.2018
13:04:32
compile-time рефлексии я жду едва ли не больше, чем модулей)

Серж
13.07.2018
13:05:04
написать свой парсер, как в го генерики делают, генерящий cpp с информацией о типах и вставляющий статический указатель на инфо с рефлексией в каждый класс

Ignat
13.07.2018
13:05:35
но при этом требуется дополнительная хромосома

Ilia
13.07.2018
13:05:45
Пишут, достаточно. https://en.cppreference.com/w/cpp/types/is_trivially_copyable "Objects of trivially-copyable types are the only C++ objects that may be safely copied with std::memcpy"
Это он в смысле С++ копируем через memcpy. А в семантическом смысле -- фиг. В Qt на этом собаку съели, там свой термин.

Dmitry
13.07.2018
13:05:47
Блин, никто никуда ничего не сериализует. И все ждут рефлексии.

Ilia
13.07.2018
13:05:54
ЗАбыл какой, но это и не важно

Серж
13.07.2018
13:06:08
я жду когда по америке бахнем

точно, клэнг же поддерживает плагины

Крис
13.07.2018
13:07:38
точно, клэнг же поддерживает плагины
Надо глянуть есть ли такое в гцц-шке

Серж
13.07.2018
13:07:42
написать к кленгу плагин, добавляющий рефлексию, звезды на гитхабе

Серж
13.07.2018
13:08:01
гцц вроде бы не расширяемый монолит

Крис
13.07.2018
13:08:29
Max
13.07.2018
13:08:50
Это он в смысле С++ копируем через memcpy. А в семантическом смысле -- фиг. В Qt на этом собаку съели, там свой термин.
В моём понятии, семантика "побитово скопировать" - это получить внешне точно такой же объект, но в другом месте.

Alex
13.07.2018
13:10:34
Хотя же ему не понятно что и надо было...
Вообще - мне как раз нужен был trivially copyable, но из за того, что я не знал как задать вопрос - задал его криво и получил холивар

Max
13.07.2018
13:11:52
Alex
13.07.2018
13:12:51
Боже упаси. При необходимости переноса лучше каким-нибудь protobuf воспользоваться или, чтобы не париться какой-нибудь простеньгий json протокол прикрутить для начала, а потом см. доклад с CoLaboratory о переходе на бинарные протоколы

Google
Серж
13.07.2018
13:19:04
шиком было бы написать это на го, все сплюплюсеры были бы зотроллены

интересно, в чате джавы смеются над с++ и рефлексию через макросы препроцессора?

Max
13.07.2018
13:20:21
В этом вашем го даже темплейтов нет =)

Это и правда уже даже не смешно. 2018 год на дворе, как никак.

До сих пор никак не написать ни одной внятной ОРМ и ни одного внятного сериализатора.

Dmitry
13.07.2018
13:22:09
Компайл тайм рефлексия вообще не спасет.

Для того же json она проецирует ограничения языка на именования ключей.

Рефлексия это одно, а ее использование это другое.

И тем более виртуализация использования всех этих type info.

Max
13.07.2018
13:26:38
Если извращенный json почему-то хочется запилить в структуру, в которой поля бы назывались так же - то да, не спасёт. А если хочется просто сериализовать/десеривализовать написанную структуру — то очень даже.

Серж
13.07.2018
13:27:08
у вас вроде есть теперь что-то вроде аннотаций [["json_key"]]

вот через них джсон и задавай, если не можешь через название переменной

Dmitry
13.07.2018
13:28:05
Серж
13.07.2018
13:28:28
у тебя есть решение лучше? буфер?

Серж
13.07.2018
13:31:02
как будто с рефлексией уб исчезнет, писать то будут все те же люди на все том же языке

Aidar
13.07.2018
13:32:45
как будто с рефлексией уб исчезнет, писать то будут все те же люди на все том же языке
Исчезнет, можно будет сделать ваши протоколы и выписывать контент подов в зависимости от эндианнесс, поэлементно, рекурсивно

Google
Aidar
13.07.2018
13:33:16
Сейчас это разве что magic_get

Dmitry
13.07.2018
13:34:17
у тебя есть решение лучше? буфер?
Буфер отдельная тема, на неё просто никто не отреагировал. Видимо мало велосипедистов :) всем збс tostring, а уж про то что в буфер писать, либыжесть.

Серж
13.07.2018
13:35:18
в буфер диды писали, когда 640 КБайт на все хватало, теперь людям это не нравится

поэтому не отреагировали

Ilia
13.07.2018
13:35:39
Что за буфер?

Dmitry
13.07.2018
13:38:41
Что за буфер?
Как идея, стандартизировать интерфейс динамического byte buffer. Даже не интерфейс, обёртка. Минимализм полный, в духе string_view. Начало, позиция, конец. И виртуальный ресайз.

Alex Фэils?︙
13.07.2018
13:39:09
span?

Aidar
13.07.2018
13:39:33
у вас вроде есть теперь что-то вроде аннотаций [["json_key"]]
Это вроде не то что в шарпе и джаве, то есть это обычно хинты

Constantine
13.07.2018
13:39:34
Вот у меня сейчас куча кода под генераторами, и первая причина, по которой эти генераторы появились вообще, было отсутствие compile time информации о существующих типах

Alex Фэils?︙
13.07.2018
13:40:20
Серж
13.07.2018
13:40:30
Constantine
13.07.2018
13:40:39
Ilia
13.07.2018
13:41:42
Виртуальный полиморфизм - плохо
Вам не угодить, полиморфный виртуализм небось тоже не подойдёт?

Dmitry
13.07.2018
13:42:29
Виртуальный полиморфизм - плохо
Не плохо. Интерфейс минимален. В минимуме ему соответствует просто массив байтов.

Constantine
13.07.2018
13:42:33
std::vector<byte> напоминает...
хотя плюсам несколько не хватает long_buffer, как вектор, только не более условного мегабайта страницы (отказ от гарантии последовательности в памяти)

Aidar
13.07.2018
13:42:46
Вам не угодить, полиморфный виртуализм небось тоже не подойдёт?
Он хочет более простой streambuf, но стримбуф говно как и весь ио стек

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