@ProCxx

Страница 2067 из 2477
Aidar
19.05.2018
18:37:53
Кстати, было же какое-то предложение к стандарту, которое позволяло вызывать size(const T &t) как t.size(), или я путаю?
я сразу скажу что я против таких расширений класса и прочей попсы, которая усложняет понимание кастомного кода

это удобно только на первый взкляд имхо

Alexander
19.05.2018
18:38:55
это удобно для автополонения

Роман
19.05.2018
18:39:00
это удобно только на первый взкляд имхо
Зависит от размера проекта и команды. Тут же вариант - не хотите - запретите на уровне кодостиля компании

Google
Alexander
19.05.2018
18:39:09
расширяемые классы - норм тема

Aidar
19.05.2018
18:39:12
это удобно для автополонения
щас бы язык разрабатывать для айде а не наоборот

Alexander
19.05.2018
18:39:23
сейчас бы не пользоваться удобствами

и внезапно, компиляторы вот влияют на развитие языка, а IDE не должны

Роман
19.05.2018
18:39:56
расширяемые классы - норм тема
Так я думаю, это сущностно то же самое, о чём я тут говорю.

Aidar
19.05.2018
18:40:46
лучшеб корутины доделали и ренджи, ато попсу какуюто ненужную толкают

Роман
19.05.2018
18:42:23
лучшеб корутины доделали и ренджи, ато попсу какуюто ненужную толкают
Попса привлекает в язык новых пользователей. А с ними - деньги компаниям, которые пилят корутины и ренжи=)

Aidar
19.05.2018
18:42:38
имхо щас будущий успех плюсцов напрямую зависит от корутин, констрейнтов, ренджей и метаклассов

Aidar
19.05.2018
18:43:27
лул нет
чо кодогенерация в 2к18?

Google
Stanislav
19.05.2018
18:44:04
лучшеб корутины доделали и ренджи, ато попсу какуюто ненужную толкают
да их уже собираются вмержить по осени, если гугл свои правки не внесет, у них были пару претензий

я про корутины

Constantine
19.05.2018
18:44:26
чо кодогенерация в 2к18?
а чо, без кодогенерации на метаклассах обойдемся?

Aidar
19.05.2018
18:44:31
да

ну точнее на интроспекции

Constantine
19.05.2018
18:44:49
смотри, мне нужно по имени создать потомка интерфейса

Stanislav
19.05.2018
18:45:01
остальное ждать не раньше 2023 ))

Constantine
19.05.2018
18:45:04
напиши плиз на метаклассах код

Aidar
19.05.2018
18:45:37
напиши плиз на метаклассах код
template<static_string Name> class foo : interface {};

Stanislav
19.05.2018
18:45:57
https://herbsutter.files.wordpress.com/2018/04/cpp11147020-201803.png?w=500

Constantine
19.05.2018
18:45:59
Aidar
19.05.2018
18:46:19
Имя с консоли ввожу
ты рантайм код хочешь? такого не бывает

точнее бывает но в джаве или пытоне

может еще евал введем?

Constantine
19.05.2018
18:47:02
ты рантайм код хочешь? такого не бывает
у меня в кодогенераторе это одной командой factory-method делается

Aidar
19.05.2018
18:47:24
у тебя там джит?

или я загробил задачу

если ты про рантаймстрока -> foo<строка> то эт вроде тож изи

Constantine
19.05.2018
18:48:18
нет

у меня там кодогенератор с xml-ками

Google
Aidar
19.05.2018
18:49:21
ну можно определить компильтайм открытие файлов наверное, но это не относится к метаклассам но относится к метакоду

Constantine
19.05.2018
18:49:26
в котором <factory-method base="Interface" name="CreateInterfaceByName" attribute="tag-name"/> <class name="Derived" base="Interface" tag-name=""> ... </class>

Aidar
19.05.2018
18:49:47
я забыл что ты кнопочки пишешь

Constantine
19.05.2018
18:50:17
я еще иногда читалки xml-ей пишу)

Aidar
19.05.2018
18:50:36
да тут всеже лучше генерация но не понятно почему кода

хотя ладно

Constantine
19.05.2018
18:50:57
у меня генерация .h файлов считай

Aidar
19.05.2018
18:51:02
типа потенциально это фронтенд для llvm

Constantine
19.05.2018
18:51:16
нормальная система вместо цппшной системы ашников

Aidar
19.05.2018
18:51:32
ты выбрал xml?

Constantine
19.05.2018
18:51:35
угу

давно еще

Constantine
19.05.2018
18:52:09
и не мучаюсь с прописыванием двадцати инклудов на каждый файл

Aidar
19.05.2018
18:52:26
Constantine
19.05.2018
18:52:45
нет, просто упоминание тайпнейм это инклуд его объявления или реализации

<class name="Derived" base="Interface" tag-name=""> ... </class> вот этого достаточно, чтобы понять, что нужно заинклудать файлик с Interface

Aidar
19.05.2018
18:53:27
у меня генерация .h файлов считай
мне немножко жалко твою ide

Constantine
19.05.2018
18:53:48
?

Aidar
19.05.2018
18:54:04
ну ты типа не можешь менять .h

а должен лезть в xml

Google
Constantine
19.05.2018
18:54:15
у меня есть кнопка

перейти на xml-ник

Aidar
19.05.2018
18:54:19
а айде хочет менять h

Constantine
19.05.2018
18:54:22
из cpp

зачем ей х менять?

Aidar
19.05.2018
18:54:59
ну рефакторинг какойнибудь

Constantine
19.05.2018
18:55:17
это оконечный код

его вообще нехрен рефакторить

в действительности есть проблемы

Admin
ERROR: S client not available

Constantine
19.05.2018
18:59:13
но это все сильно фигня, потому что с кодогенерацией когда ты неожиданно понимаешь что надо явно объявить все деструкторы, ты добавляешь за десять минут тысячу штук и у тебя все ок

в гребаном цппшнике функции написаны в том же порядке, что в описании класса

нет неиспользуемых инклудов и так далее

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

Constantine
19.05.2018
19:01:46
Aidar
19.05.2018
19:02:01
ну метакод может добавлять методы

Constantine
19.05.2018
19:02:05
мне метакласс реализацию деструктора в цпп файл допишет?

интересно, в какой из?

Aidar
19.05.2018
19:02:15
заинлайнишь

Google
Constantine
19.05.2018
19:02:31
явное объявление как раз чтобы он был НЕ ИНЛАЙН

потому что std::unique_ptr<ForwardedName> и ты во всех подряд местах обязан инклудать реализацию ForwardedName

потому что в каждом TU будет инстанцироваться деструктор OwnerClass

по паре поводов

это минуты времени компиляции, вроде

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

Yaroslav
19.05.2018
21:03:47
Привет, не подскажите есть ли какая-нибудь группа, где можно conan.io обсудить? Ну и в целом системы сборки, CI, разруливание зависимостей для c/c++

Yaroslav
19.05.2018
21:14:37
В общем мой проект использует стороннюю сишную библиотеку. Для удобства ее подключения, я создал для нее конан пакет и в своем проекте с помощью conan.cmake из симейка на этапе конфигурирования ее получаю. На этом этапе все хорошо.

Yaroslav
19.05.2018
21:16:36
StormLib. Опенсорсная либа для работы с близзовскими mpq архивами

Alexander
19.05.2018
21:17:00
Yaroslav
19.05.2018
21:17:08
Правда пришлось форкнуть ее, чтобы подправить себе по вкусу

Я на бинкрафтеровских шаблонах и делал. Но сборку на маке ниасилил. Ну и не уверен, что пакетированный форк(даже не релиз) не самой популярной либы кому-то нужен

Alexander
19.05.2018
21:19:57
Правда пришлось форкнуть ее, чтобы подправить себе по вкусу
без форка конечно лучше было бы... но что поделать.

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

надо наполнять пакетиник либами

Yaroslav
19.05.2018
21:22:12
Далее, я понял, что напрямую работать с сишным кодом неудобно, я решил написать для нее с++ обертку. StormLibCxx. И тут встает проблема. Если я в cmake сборке своего враппера вызову conan.cmake, то поломаю конану знание о зависимостях моего враппера. Получится conan -> cmake -> conan.

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

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