Добрый день.
Смотрю видео с последнего CPPCON и проскачил вот такой пример кода с C+++20
cout << weekday(June/21/2016);
Будьте любезны, поясните какие вызовы происходят в данном коде. Я понимаю что June это константа в chrono, но как '/' парсится/интерпритируется компилятором?
Или они в chrono оператор-/ переопределили?
Если есть желание — найдется 1000 возможностей.
Если нет желания — найдется 1000 причин.
Здравствуйте, k55, Вы писали:
k55>Или они в chrono оператор-/ переопределили?
Ну да.
(а какие у тебя ещё были варианты?)
k55> Я понимаю что June это константа в chrono, но как '/' парсится/интерпритируется компилятором?
Ну если прямо совсем непонятно что какая-то запись означает и при этом не ясно как её искать, то попроси компилятор
AST вывести и там посмотри.
Или, например, в
cppinsights засунь
Здравствуйте, k55, Вы писали:
k55>Будьте любезны, поясните какие вызовы происходят в данном коде. Я понимаю что June это константа в chrono, но как '/' парсится/интерпритируется компилятором?
k55>Или они в chrono оператор-/ переопределили?
Именно так. Констатна June имеет тип
std::chrono::month — это класс, для которого определен
operator /
W>(а какие у тебя ещё были варианты?)
Да пока пост писать не начал у меня вообще вариантов небыло. Давно разработкой на ++ не занимался.
Еще мысль была, может чего в C++20 добавили, о чем я не в курсе.
W>Ну если прямо совсем непонятно что какая-то запись означает и при этом не ясно как её искать, то попроси компилятор
О, спасибо, не знал что он умеет такое делать.
Если есть желание — найдется 1000 возможностей.
Если нет желания — найдется 1000 причин.