首页 > 代码库 > c++ primer 6.5.2节练习答案

c++ primer 6.5.2节练习答案

练习6.43

a)放在头文件,因为内联函数和constexpr函数一般写在头文件中

b)函数的定义一般写在源文件,而声明放在头文件

练习6.44

1 inline bool isShorter(const string &s1, const string &s2)
2 {
3     return s1.size() < s2.size();
4 }

练习6.45

内联函数一般用于优化规模小、流程直接、频繁调用的函数。

练习6.46

不行,isShorter函数如果定义成constexpr函数,需要返回值和形参都必须是一个常量表达式,且只有一个return语句,而isShorter函数需要比较的是两个字符串的长度,返回的是布尔类型,故无法定义成constexpr函数。

c++ primer 6.5.2节练习答案