Write a templated function in C++, named "safe_add" which adds two numbers (ints, floats, doubles, etc) and returns their sum. But, if either number (or their sum) contains the number 7, raise a runtime_error stating "can't add because 6+1 appears in it". Example: const int x = 170, y = 10; ASSERT_THROW(safe_add(x, y), std::runtime_error); ASSERT_EQ(std::string(e.what()), "can't add because 6+1 appears in it"); Example 2: int result = safe_add(66, 30); int expected = 96;
Write a templated function in C++, named "safe_add" which adds two numbers (ints, floats, doubles, etc) and returns their sum. But, if either number (or their sum) contains the number 7, raise a runtime_error stating "can't add because 6+1 appears in it". Example: const int x = 170, y = 10; ASSERT_THROW(safe_add(x, y), std::runtime_error); ASSERT_EQ(std::string(e.what()), "can't add because 6+1 appears in it"); Example 2: int result = safe_add(66, 30); int expected = 96;
C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 8SA
Related questions
Question
Write a templated function in C++, named "safe_add" which adds two numbers (ints, floats, doubles, etc) and returns their sum. But, if either number (or their sum) contains the number 7, raise a runtime_error stating "can't add because 6+1 appears in it".
Example:
const int x = 170, y = 10;
ASSERT_THROW(safe_add(x, y), std::runtime_error);
ASSERT_EQ(std::string(e.what()), "can't add because 6+1 appears in it");
Example 2:
int result = safe_add(66, 30);
int expected = 96;
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 2 steps with 1 images
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr