We recommend using Visual Studio 2017



The latest version of this topic can be found at SafeMultiply.

Multiplies two numbers together in a way that protects against overflow.

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


[in] t
The first number to multiply. This must be of type T.

[in] u
The second number to multiply. This must be of type U.

[out] result
The parameter where SafeMultiply 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 multiplication operation without creating an instance of the SafeInt Class.

System_CAPS_ICON_note.jpg 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

SafeInt Functions
SafeInt Library
SafeInt Class