Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

C++ chrono::operator+() Function



The std::chrono::operator+() function in C++, is used to perform addition operations on chrono time durations and time points. It allows you to add a time duration to a chrono time point, effectively shifting the time point forward by the specified duration.

It can be used with various time units like seconds, milliseconds depending on the type of the duration. The result of the addition is a new time point, that can be used for further calculations or comparisons.

Syntax

Following is the syntax for std::chrono::operator+() function.

constexpr duration operator+() const;

Parameters

This function does not accepts any parameters.

Return value

This function returns the copy of this duration object.

Example 1

In the following example, we are going to consider the basic usage of the operator+() function.

#include <iostream>
#include <chrono>
int main() {
   using namespace std::chrono;
   seconds x1(1);
   seconds x2(2);
   seconds a = x1 + x2;
   std::cout << "Result : " << a.count() << " seconds" << std::endl;
   return 0;
}

Output

Output of the above code is as follows −

Result : 3 seconds

Example 2

Consider the following example, where we are going to add the hours and minutes to a chrono::time_point.

#include <iostream>
#include <chrono>
int main() {
   using namespace std::chrono;
   system_clock::time_point a = system_clock::now();
   hours x(2);
   minutes y(42);
   system_clock::time_point new_time = a + x + y;
   std::time_t z = system_clock::to_time_t(new_time);
   std::cout << "Result : " << std::ctime( & z);
   return 0;
}

Output

Following is the output of the above code −

Result : 9223372036854775807
cpp_chrono.htm
Advertisements