Question: Consider the following code in C++: Suppose that string_map::operator[] contains the only call to complex_ lookup anywhere in the program. Explain why it would be
Consider the following code in C++:
Suppose that string_map::operator[] contains the only call to complex_ lookup anywhere in the program. Explain why it would be unwise for the programmer to expand that call textually in-line and eliminate the separate function.
class string_map { string cached_key; string cached_val; const string complex_lookup(const string key); // body specified elsewhere public: const string operator [] (const string key) { if (key == cached_key) return cached_val; string rtn_val = complex_lookup (key); cached_key key; cached_val = rtn_val; return rtn_val; };
Step by Step Solution
3.50 Rating (167 Votes )
There are 3 Steps involved in it
Because this would be likely to inhibit automatic inlin... View full answer
Get step-by-step solutions from verified subject matter experts
