Templates avoid some of the common errors found in code that makes heavy use of function-like macros, such as evaluating parameters with side effects twice.
Templates avoid some of the common errors. These common errors are found in code-like macros. This was such as evaluating parameters with side effects twice. This code makes heavy use of function.