Exercise 6.43
A) put in the header file because the inline function and the constexpr function are generally written in the header file
b) The definition of the function is generally written in the source file, and the declaration is placed in the header file
Exercise 6.44
1 bool isshorter (conststringconststring &s2)2 {3 return s1.size () < s2.size (); 4 }
Exercise 6.45
Inline functions are typically used to optimize functions that are small, process-direct, and frequently called.
Exercise 6.46
No, isshorter. If the function is defined as a constexpr function, both the return value and the formal parameter must be a constant expression, and there is only one return statement, and the Isshorter function needs to compare the length of two strings, returning the Boolean type, It cannot be defined as a constexpr function.
C + + Primer 6.5.2 Practice Answers