В C++ Core Guidlines P.1 change_speed
пример показывает тип Speed
который используется, как показано ниже:
change_speed(Speed s); // better: the meaning of s is specified
// ...
change_speed(2.3); // error: no unit
change_speed(23m / 10s); // meters per second
Меня особенно интересуют последние две строки этого примера. Первое, кажется, предполагает, что если вы не предоставите единицы с аргументом change_speed
это вызовет ошибку. В последней строке показаны единицы, определенные с использованием некоторых букв m
и s
. Являются ли обе эти новые функции в современных версиях C++? Если да, то как это будет реализовано, и какая версия C++ требуется?