How does C++ put helper functions in the same namespace as the classes they support
This article mainly explains "how C++ puts helper functions and the classes they support in the same namespace". The content of the explanation in the article is simple and clear, and it is easy to learn and understand. let's study and learn "how C++ puts helper functions and the classes they support in the same namespace".
C.5: put helper functions in the same namespace as the classes they support
Reason (reason)
Helper functions are those that do not require direct access to the representation of the class (private data) and can be seen as a useful interface to the class (usually provided by the author of the class).
Example (sample)
Namespace Chrono {/ / here we keep time-related servicesclass Time {/ * * /}; class Date {/ *... * /}; / / helper functions:bool operator== (Date, Date); Date next_weekday (Date); / /...}
Note (Note)
This is especially important for overloaded operators.
This (placed in the same namespace as the classes that support objects) is particularly important for budget character overloading.
Enforcement (implementation recommendations)
Flag global functions taking argument types from a single namespace.
Prompt if you find a global function that only uses a single namespace parameter type.
Thank you for your reading, the above is the content of "how C++ puts the help functions and the classes they support in the same namespace". After the study of this article, I believe you have a deeper understanding of how C++ puts the help functions and the classes they support in the same namespace, and the specific use still needs to be verified in practice. Here is, the editor will push for you more related knowledge points of the article, welcome to follow!