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