
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
Господа

Stanislav
18.06.2018
11:13:06

Matwey
18.06.2018
11:13:11
Я запутался
Делать частичную специализацию функций так и не разрешили?

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

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

Ilia
18.06.2018
11:13:48

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ом разрешили?

Grigor
18.06.2018
11:18:07

Google

Ilia
18.06.2018
11:18:45

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

Крис
18.06.2018
11:34:55
Я не прав?

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

Ilia
18.06.2018
11:46:35

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

Igor
18.06.2018
11:53:36

Igor
18.06.2018
11:54:20

Vhäldemar
18.06.2018
11:55:03

Крис
18.06.2018
11:59:46

Grigor
18.06.2018
12:00:07

Крис
18.06.2018
12:00:29

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

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

Igor
18.06.2018
12:02:46

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

Pika
18.06.2018
12:05:32

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

Дед Пегас
18.06.2018
14:58:32
Мне лень руками повторять ошибку...

Evgeniy
18.06.2018
15:09:51
а так хоть исус будет