Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All


Subtracts two numbers in a way that protects against overflow.

template<typename T, typename U>
inline bool SafeSubtract (
   T t,
   U u,
   T& result
) throw ();

[in] t

The first number in the subtraction. This must be of type T.

[in] u

The number to subtract from t. This must be of type U.

[out] result

The parameter where SafeSubtract stores the result.

true if no error occurs; false if an error occurs.

This method is part of SafeInt Library and is designed for a single subtraction operation without creating an instance of the SafeInt Class.

Note Note

This method should only be used when a single mathematical operation must be protected. If there are multiple operations, you should use the SafeInt class instead of calling the individual stand-alone functions.

For more information about the template types T and U, see SafeInt Functions.

Header: safeint.h

Namespace: Microsoft::Utilities

Community Additions

© 2015 Microsoft