C++非法声明详解:谭浩强教程中的三大错误示例

需积分: 9 4 下载量 53 浏览量 更新于2024-08-23 收藏 8.66MB PPT 举报
在C++程序设计中,非法的声明往往会导致编译错误,理解这些错误的关键在于遵循C++的语法规则。首先,让我们来看几个例子: 1. "int & a[9];" 这是一个试图建立数组引用的错误声明。在C++中,不能直接声明一个数组的引用,因为数组名本身就是引用。正确的做法是通过索引访问数组元素,例如`int(&a)[9]`,但这并不是一个引用类型的声明。 2. "int & *p;" 这个声明试图建立一个指向引用的指针,这在C++中也是不允许的。指针通常用于存储地址,而引用直接绑定到已存在的对象。正确的指针对应于引用,应该是`int* p;` 或 `int& *p;`,但这后面的形式通常用于指向指针的指针。 3. "int & &px;" 双重引用的声明同样是非法的。C++允许引用传递,但这里有两个连续的引用符号`&`实际上是不必要的。如果想要引用已经存在的引用,只需写`int &&px`即可。 接着,我们了解到C++的发展历史。C++起源于C语言,由Dennis Ritchie和Bjarne Stroustrup在20世纪70年代为了编写UNIX操作系统而创建。C++吸收了BCPL和B语言的优点,特别是在面向对象编程和模板等特性上。C++语言的特点包括结构化编程、灵活性、高效性和良好的可移植性。 C语言的设计使得它既具有高级语言的易读性和抽象性,又保留了低级语言的性能,提供了丰富的运算符,包括算术、逻辑和位操作,以及灵活的数据结构。然而,C语言的语法结构不够严格,对于初学者来说可能较为挑战,需要花费更多时间去理解和熟悉。 尽管存在这些挑战,C++强大的功能使其成为许多专业领域(如系统编程、游戏开发、图形处理等)的首选语言。学会正确编写和调试C++代码,对于程序员的职业生涯至关重要。因此,学习过程中要注意理解语法规则,避免非法声明,确保程序的正确性和效率。