21 #include "ns3/core-module.h" 22 #include "ns3/length.h" 41 std::cout <<
"\nConstructors:" 42 <<
"\nLength (" << input <<
", Unit::Meter) = " <<
Length (input, Unit::Meter)
43 <<
"\nLength (" << input <<
", \"m\") = " <<
Length (input,
"m")
44 <<
"\nLength (" << input <<
", \"meter\") = " <<
Length (input,
"meter")
45 <<
"\nLength (Quantity(" << input <<
", Unit::Meter)) = " <<
Length (quantity)
46 <<
"\nLength (\"5m\") = " <<
Length (
"5m")
47 <<
"\nLength (\"5 m\") = " <<
Length (
"5 m")
48 <<
"\nLength (\"5meter\") = " <<
Length (
"5meter")
49 <<
"\nLength (\"5 meter\") = " <<
Length (
"5 meter")
50 <<
"\nLength (\"5meters\") = " <<
Length (
"5meters")
51 <<
"\nLength (\"5 meters\") = " <<
Length (
"5 meters")
58 Length moonDistance (3.84402e8, Unit::Meter);
61 std::cout <<
"\nConversions: " 62 <<
"\nDistance to moon = " << moonDistance
63 <<
"\nIn Feet: " << moonDistance.
As (Unit::Foot)
64 <<
"\nIn Miles: " << moonDistance.
As (Unit::Mile)
65 <<
"\nIn Kilometers: " << moonDistance.
As (Unit::Kilometer)
77 std::cout <<
"\nArithmetic Operations:" 78 <<
"\nAddition: " << oneMeter <<
" + " << oneMeter <<
" = " 79 << (oneMeter + oneMeter)
80 <<
"\nSubtraction: " << oneMeter <<
" - " << oneMeter <<
" = " 81 << (oneMeter - oneMeter)
82 <<
"\nMultiplication By Scalar: " << oneMeter <<
" * " << scale <<
" = " 84 <<
"\nDivision: " << oneMeter <<
" / " << twoMeter <<
" = " 85 << (oneMeter / twoMeter)
86 <<
"\nDivision By Scalar: " << oneMeter <<
" / " << scale <<
" = " 98 std::cout <<
"\nComparison Operations:" << std::boolalpha
99 <<
"\nEquality: " << oneMeter <<
" == " << oneMeter <<
" is " 100 << (oneMeter == oneMeter)
101 <<
"\nEquality: " << oneMeter <<
" == " << twoMeter <<
" is " 102 << (oneMeter == twoMeter)
103 <<
"\nInequality: " << oneMeter <<
" != " << oneMeter <<
" is " 104 << (oneMeter != oneMeter)
105 <<
"\nInequality: " << oneMeter <<
" != " << twoMeter <<
" is " 106 << (oneMeter != twoMeter)
107 <<
"\nLesser: " << oneMeter <<
" < " << oneMeter <<
" is " 108 << (oneMeter < oneMeter)
109 <<
"\nLesser: " << oneMeter <<
" < " << twoMeter <<
" is " 110 << (oneMeter < twoMeter)
111 <<
"\nLesser: " << threeMeter <<
" < " << oneMeter <<
" is " 112 << (threeMeter < oneMeter)
113 <<
"\nGreater: " << oneMeter <<
" > " << oneMeter <<
" is " 114 << (oneMeter > oneMeter)
115 <<
"\nGreater: " << oneMeter <<
" > " << twoMeter <<
" is " 116 << (oneMeter > twoMeter)
117 <<
"\nGreater: " << threeMeter <<
" > " << oneMeter <<
" is " 118 << (threeMeter > oneMeter)
129 int64_t count =
Div (totalLen, pieceLen, &remainder);
131 std::cout <<
"\nHow many times can a " << totalLen.
As (Unit::Foot) <<
" length " 132 <<
"be split into " << pieceLen.
As (Unit::Foot) <<
" sized pieces? " 134 <<
"\nremainder: " << remainder.
As (Unit::Foot)
137 std::cout <<
"\nHow much remains after splitting a " 138 << totalLen.
As (Unit::Foot) <<
" length into " 139 << pieceLen.
As (Unit::Foot) <<
" sized pieces? " 140 <<
Mod (totalLen, pieceLen).
As (Unit::Foot)
144 int main (
int argc,
char** argv)
Quantity As(Unit unit) const
Create a Quantity in a specific unit from a Length.
Length Feet(double value)
This function provides a string parsing method that does not rely on istream, which has been found to...
Unit
Units of length in various measurement systems that are supported by the Length class.
Length Mod(const Length &numerator, const Length &denominator)
This function provides a string parsing method that does not rely on istream, which has been found to...
int64_t Div(const Length &numerator, const Length &denominator, Length *remainder)
This function provides a string parsing method that does not rely on istream, which has been found to...
Every class exported by the ns3 library is enclosed in the ns3 namespace.
An immutable class which represents a value in a specific length unit.
Represents a length in meters
Length Meters(double value)
This function provides a string parsing method that does not rely on istream, which has been found to...
void ArithmeticOperators()