Item-26 Postpone variable definitions as long as possible
· ☕ 4 min read
Postponing variable definitions as long as possible increases program clarity and improves progranm efficiency.
Postponing variable definitions as long as possible increases program clarity and improves progranm efficiency.
When std::swap
would be inefficient for your type,provide a non-throwing swap
member function, a non-member swap
calling the member, and possibly a specialized std::swap
for the case of classes (not templates).
If we need type conversions on all parameters to a function including the one pointed to by the this
pointer, the function must be a non-member.
Prefer non-member non-friend functions to member functions for better encapsulation, packaging flexibility, and functional extensibility.
Declaring data members private
gives clients syntactically uniform access to data, affords fine-grained access control, allows invariants to be enforced, and offers class authors implementation flexibility.