@ProCxx

Страница 2140 из 2477
Egor
18.06.2018
11:09:27
да с++ тот же

язык вроде хороший)

Ilia
18.06.2018
11:09:45
Alexander
18.06.2018
11:09:53
избыточен, к сожалению. Я говорю как человек писавший сайты на C++

Google
Konstantin
18.06.2018
11:09:55
я думаю можно на С++ написать модуль для питона и его подгрузить в conanfile

если реально есть такая необходимость

просто никто не пробовал - потому что проще на питоне написать

но как бы если сильно хочется - никто не мешает

хоть на delphi

Ilia
18.06.2018
11:10:51
А нафига?

Konstantin
18.06.2018
11:11:18
ну вот ненавидишь ты например питон по каким-то идеологическим причинам

Ilia
18.06.2018
11:11:31
Там нужен простой и мощный скриптовый язык, с хорошей базовой библиотекой в коробке. Это как раз Python

Alexander
18.06.2018
11:11:45
ещё ruby наверное неплох был бы

Konstantin
18.06.2018
11:11:47
что он интерпретируемый и медленный, что там сборка мусора и глобальный лок, или еще что-то

Alexander
18.06.2018
11:11:51
@crackedmind

Ilia
18.06.2018
11:12:00
Stanislav
18.06.2018
11:12:26
Google
Alexander
18.06.2018
11:12:54
а?
ты вроде по рубям спец. скажи, неплохо было бы иметь конан с рецептами на руби?

Ilia
18.06.2018
11:12:56
что он интерпретируемый и медленный, что там сборка мусора и глобальный лок, или еще что-то
Ты же не дифуры на нём будешь решать... Дёрг то, дёрг это, и все дела. Там как раз Питон ОК, хотя да, он ОЧЕНЬ медленный на вычислениях.

Matwey
18.06.2018
11:13:04
Господа

Matwey
18.06.2018
11:13:11
Я запутался

Делать частичную специализацию функций так и не разрешили?

Konstantin
18.06.2018
11:13:30
хотя по мне так для рецептов не критично вообще ничего из этого

Дед Пегас
18.06.2018
11:13:39
Так. Ладно. Время поковыряться в сорцах конана.

Matwey
18.06.2018
11:14:03
Кто должен был разрешить?
Комитет по стандартизации

Ilia
18.06.2018
11:14:15
Комитет по стандартизации
Там многие компиляторы (на VC намекаю) достаточно долгое время это не умели просто делать... А так -- пожалуйста...

Matwey
18.06.2018
11:16:35
Всегда можно было делать явную специализацию шаблона функции, а частичную нельзя было

Приходилось изобретать структуру со статическим членом

Ilia
18.06.2018
11:17:25
http://en.cppreference.com/w/cpp/language/templates

Specializations may also be provided explicitly: full specializations are allowed for both class and function templates, partial specializations are only allowed for class templates.

Matwey
18.06.2018
11:17:58
Так

А кто сказал что в 98ом разрешили?

Google
Ilia
18.06.2018
11:18:45
А кто сказал что в 98ом разрешили?
Там написано "synce c++11" ? Нет же ?

Matwey
18.06.2018
11:19:38
Ну там написано что вообще нельзя

Ilia
18.06.2018
11:20:14
Ну, нельзя, и с 98. И пока ничего не изменилось.

Matwey
18.06.2018
11:20:26
Жаль

Ilia
18.06.2018
11:24:03
Жаль
А тебе просто перегрузкой функций не сделать что тебе нужно?

Matwey
18.06.2018
11:25:16
А тебе просто перегрузкой функций не сделать что тебе нужно?
Нет, я просто запихнул типы в шаблонные параметры. Мне нужны сами типы, а не инстансы, поэтому перегружать не по чему. Да я знаю как сделать через специализацию классов.

Ilia
18.06.2018
11:32:19
Нет, я просто запихнул типы в шаблонные параметры. Мне нужны сами типы, а не инстансы, поэтому перегружать не по чему. Да я знаю как сделать через специализацию классов.
Это читал? http://www.gotw.ca/publications/mill17.htm Further, base templates can be specialized. This is where class templates and function templates diverge further, in ways that will become important later in this article. A class template can be partially specialized and/or fully specialized.[1] A function template can only be fully specialized, but because function templates can overload we can get nearly the same effect via overloading that we could have got via partial specialization.

Ilia
18.06.2018
11:36:18
Я же про это вообще не говорил... Почитай статью... А так, нешаблонная фукнция ВСЕГДА имеет приоритет к шаблонной, если фукнция уже есть, и её не нужно инстанциировать из шаблона, возмётся нешаблонная.

Так всегда было с 98-го, но может сейчас что-то и поменяли

Крис
18.06.2018
11:37:05
Но точно могу сказать, что были случаи когда нешаблонная ф-ция игноририровалась, а вместо нее вызывалась шаблонная

сейчас попробую пример сделать, аж интересно

Ilia
18.06.2018
11:40:20
Крис
18.06.2018
11:41:24
Не знаю, помутнение какое-то

Но точно помню, что был какой-то нюанс связанный с шаблонными функциями и перегрузками

а вот какой, не вспомню точно

может и ошибаюсь

Вспомнил

Google
Крис
18.06.2018
11:45:31
Вы правы, там был случай с функциями которые зависят от шаблонного типа. И в случае вызова шаблонной функции из другой шаблонной функции у которой в параметре есть обьект шаблонного типа, то выбор функции для подстановки откладывается до точного определения типа(и будет выбиратся НЕшаблонная функция(так и не понял почему). А если функция не принимает на вход шаблонный параметр, то происходит подстановка в шаблонную функцию

Пример кода

https://pastebin.com/1S5pBp3j

Igor
18.06.2018
11:53:24
Не знаю, помутнение какое-то
Это связано не с overloading а с тем как работают шаблоны. adl(S()) это не dependent вызов, поэтому он резолвится сразу когда парсится шаблонная функция, а не после подстановки. adl(S) в этот момент еще не видна, поэтому используется adl(T).

Igor
18.06.2018
11:54:20
Ilia
18.06.2018
12:02:08
Да
А есть ссылка ? На стандарт или cppreference? Я вот что-то не нашёл..

Grigor
18.06.2018
12:02:24
На cppreference должно быть

Maxim
18.06.2018
12:04:57
Привет всем. Есть кто в cmake хорошо разбирается? Есть функция получающая хеш гит репозитория и записывающая её в переменную, которая потом используется для указания версии исполняемого файла. Если ли способ заставить cmake перед каждым построением вызывать её, чтобы обновить, потому что если она будет браться из кеша, то толку от этого мало?

Vhäldemar
18.06.2018
12:05:45
гугл do not cache cmake variable не помогло?

Igor
18.06.2018
12:13:48
в смысле? https://godbolt.org/g/cnqovX
Это согласитесь немножко другой пример чем обсуждался? Конкретно здесь foo<C> вообще не участвует, потому что по braced init listу не выводится шаблонный параметр.

Vitaly
18.06.2018
14:49:15
Увидел в тетради дочери надпись "Леша+Маша=Дружба". Не выдержал, исправил на "Дружба==Леша+Маша".

Google
Andrey
18.06.2018
14:50:34
Серъёзно?

Baruch
18.06.2018
14:52:41
Дед Пегас
18.06.2018
14:52:59
осторожно, там питон
Да, я уже нашёл там пару косяков...

Baruch
18.06.2018
14:54:08
Да, я уже нашёл там пару косяков...
так это, PRs welcome! Я серъезно сейчас, как минимум issue открой.

Дед Пегас
18.06.2018
14:58:32
так это, PRs welcome! Я серъезно сейчас, как минимум issue открой.
Хм... А issue прям обязательно открывать для PR? =)

Мне лень руками повторять ошибку...

Evgeniy
18.06.2018
15:09:51
Хм... А issue прям обязательно открывать для PR? =)
ну вдруг не сможешь пофиксить

а так хоть исус будет

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