refactor: 💥 q_* UDL renamed to _q_*
We had some fun exploring the STD UDLs for potential collisions, we have learnt our lesson and know how to proceed. Now is high time to start behaving and obeying C++ rules.
This commit is contained in:
1 parent
2b408f19c0
commit
9527b39005
130 files changed
+2221
-2235
No files matched your search
+10
-10
@@ -4,22 +4,22 @@ Quick Start
|
||||
Here is a small example of possible operations::
|
||||
|
||||
// simple numeric operations
|
||||
static_assert(10q_km / 2 == 5q_km);
|
||||
static_assert(10_q_km / 2 == 5_q_km);
|
||||
|
||||
// unit conversions
|
||||
static_assert(1q_h == 3600q_s);
|
||||
static_assert(1q_km + 1q_m == 1001q_m);
|
||||
static_assert(1_q_h == 3600_q_s);
|
||||
static_assert(1_q_km + 1_q_m == 1001_q_m);
|
||||
|
||||
// dimension conversions
|
||||
static_assert(1q_km / 1q_s == 1000q_m_per_s);
|
||||
static_assert(2q_km_per_h * 2q_h == 4q_km);
|
||||
static_assert(2q_km / 2q_km_per_h == 1q_h);
|
||||
static_assert(1_q_km / 1_q_s == 1000_q_m_per_s);
|
||||
static_assert(2_q_km_per_h * 2_q_h == 4_q_km);
|
||||
static_assert(2_q_km / 2_q_km_per_h == 1_q_h);
|
||||
|
||||
static_assert(2q_m * 3q_m == 6q_m2);
|
||||
static_assert(2_q_m * 3_q_m == 6_q_m2);
|
||||
|
||||
static_assert(10q_km / 5q_km == 2);
|
||||
static_assert(10_q_km / 5_q_km == 2);
|
||||
|
||||
static_assert(1000 / 1q_s == 1q_kHz);
|
||||
static_assert(1000 / 1_q_s == 1_q_kHz);
|
||||
|
||||
.. admonition:: Try it on Compiler Explorer
|
||||
|
||||
@@ -46,7 +46,7 @@ of basic library features::
|
||||
int main()
|
||||
{
|
||||
using namespace units::physical::si::literals;
|
||||
Speed auto v1 = avg_speed(220q_km, 2q_h);
|
||||
Speed auto v1 = avg_speed(220_q_km, 2_q_h);
|
||||
Speed auto v2 = avg_speed(si::length<international::mile>(140), si::time<si::hour>(2));
|
||||
Speed auto v3 = quantity_cast<si::metre_per_second>(v2);
|
||||
Speed auto v4 = quantity_cast<int>(v3);
|
||||
|
||||
Reference in new issue
Block a user