C++复习题.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
【C++复习题知识点详解】 1. **C++源文件扩展名**:C++源代码文件的扩展名通常是`.cpp`,而不是`.exe`(可执行文件)、`.c`(C语言源文件)或`.obj`(对象文件)。 2. **函数调用与参数匹配**:在函数调用时,要根据函数的声明来匹配参数类型。例如,给定的三个函数声明,正确调用`fun`的方法取决于其参数类型。`fun(5)`适合调用接受整数的函数,`fun(&b)`适合传递引用的函数,`fun(p)`适合接收指针的函数。 3. **标准输入流对象cin**:`cin`是C++中的标准输入流对象,用于从键盘读取输入,不能直接读取数值、空白字符或字符串,需要配合其他输入操作。 4. **C++关键字**:C++的关键字包括`class`、`friend`等,但`mutable`、`virtual`不是C++的关键字,它们是特殊的标识符。 5. **继承与类的扩展**:通过继承,可以从现有的类创建新的类,这在面向对象编程中是一种常见方式。继承可以是公有(`public`)、私有(`private`)或保护(`protected`)的。 6. **静态成员函数**:静态成员函数属于类,而非类的实例,因此它们不能直接访问非静态数据成员或非静态常量,只能访问静态数据成员。 7. **常数据成员初始化**:常数据成员(i)在类的定义中不能直接初始化,必须在构造函数的初始化列表中进行。 8. **内联函数**:内联函数是在编译时展开的,目的是优化程序性能,避免函数调用的开销。因此,它们不会被作为独立的函数实体存在。 9. **存储空间占用**:在这些选项中,`NULL`是一个空指针,通常占4或8个字节;`0.0`是一个浮点数,占用4或8个字节;`'0'`是字符,占1个字节;`尠尰`是两个汉字,占用4个字节(UTF-8编码下)。汉字占用的存储空间最大。 10. **面向对象编程**:面向对象程序设计是对象和消息的组合,其中对象包含数据和操作数据的方法,而消息是对象间的通信方式。 11. **默认参数**:如果调用带有默认参数的函数且缺少一个参数,最后一个未指定的参数将使用其默认值。 12. **析构函数调用**:析构函数在对象生命周期结束时被调用。根据题目中的对象创建,析构函数会被调用3次(分别为`a`、`b[2]`中的每个元素和`*p`)。 13. **成员函数访问**:如果成员函数`f1`不能直接调用`f2`,可能是因为它们都是非静态的,需要通过对象实例来调用。 14. **模板与实例化**:函数模板的实例化是自动的,而类模板的实例化需要显式指定。函数模板可以有多个类型参数,类模板也可以。 15. **输入输出流**:`cout`是一个输出流对象,`>>`是插入运算符,用于从输入流提取数据。`iostream`头文件包含输出流和输入流的相关定义。 16. **非重载运算符**:C++中,某些运算符不能被重载,如`=`, `[]`, `.`, `->`, `::`等。 17. **面向对象语言**:C++、Java和C#是面向对象的编程语言,而C语言不是。 18. **运算符重载**:运算符重载允许为运算符赋予多种含义,但并不改变其原有的操作数个数、优先级或结合性。 19. **指针与递增操作**:如果`*p`指向5,`p+1`指向8,执行`(*p)++`后,`*p`的值变为6,因为自增操作使指针所指对象的值加1。 20. **运算符重载特性**:重载运算符时,不需要保持的性质是操作数类型,可以针对不同类型的对象进行重载。 21. **数组操作**:在C++中,可以给数组的元素赋值,例如`str[0]=a`,但不能直接赋值字符串,如`str="hello"`。 22. **引用声明**:正确声明引用的方式是`int &x=k`,它创建了一个引用`x`,绑定到变量`k`。 23. **虚基类声明**:正确的虚基类声明是`class B : virtual public A`,这使得子类只有一个虚基类`A`的副本。 24. **纯虚函数**:`area()=0;`表示一个纯虚函数,它没有定义,通常在基类中声明,派生类需要提供实现。 25. **运算符重载参数**:当重载一个运算符为空参数列表时,通常意味着该运算符是成员运算符,且有一个隐含的操作数——当前对象。 以上就是C++复习题中的关键知识点解析,涵盖了源文件扩展名、函数调用、输入输出流、面向对象概念、模板、运算符重载等多个方面。
剩余20页未读,继续阅读
- 粉丝: 9837
- 资源: 9652
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助