C++入门错误:理解非法声明的关键概念

需积分: 9 4 下载量 108 浏览量 更新于2024-08-19 收藏 8.66MB PPT 举报
在谭浩强的C++入门到精通PPT中,有部分章节专门探讨了C++编程语言的一些基础知识和注意事项。其中,讲解了几个关于C++声明的非法例子,这些错误的理解和实践可能在学习过程中引起混淆: 1. **非法数组引用声明**:`int & a[9];` 是一个错误的声明,因为数组不能被定义为引用类型。数组在C++中是值类型,不能直接作为引用使用。正确的做法是声明数组变量并初始化,如 `int a[9] = {0};`。 2. **指向引用的指针**:`int & *p;` 这样的声明也是非法的,因为`&`操作符通常用于获取变量的地址,而`*`用于解引用指针。直接将它们组合在一起是不正确的语法。正确的是声明指针指向引用,如`int (*p)(&m);`,但这通常不是常见的用法。 3. **引用的引用**:`int & &px;` 的声明同样是错误的,因为引用是单向的,不能层层引用。正确的引用应该是`int &px;` 或者`int &x = px;`。 在讲解这些错误的同时,谭浩强强调了C++语言的一些关键特性: - **C++的发展历程**:从BCPL、B语言到C语言,再到C++,C++是在C语言基础上的增强,主要是为了增加面向对象编程(Object-Oriented Programming, OOP)的能力。 - **C++的特点**: - 结构化编程:C++支持模块化编程,简洁易用,适用于各种规模的项目,包括系统级编程和数值计算。 - 高级语言与低级语言结合:C++提供了丰富的运算符,包括算术、逻辑和位运算,以及灵活的数据结构,使得程序表达力强且高效。 - 可移植性:C语言编写的程序在不同平台上的兼容性较好,只需要少量调整就能跨平台运行。 - 自由度与挑战:C++语法的灵活性允许高级开发者写出高效的通用代码,但对新手来说,理解和掌握语法以及调试可能较为复杂。 在谭浩强的C++教材中,这部分内容旨在帮助读者理解C++语言的基本规则和潜在陷阱,确保编写出有效的、可读性强的代码。学习者应注重理解声明语句的正确用法,避免这类非法声明,并逐渐提升C++编程技能。