C++编程禁写指针与间接引用详解:谭浩强教程

需积分: 35 1 下载量 137 浏览量 更新于2024-08-24 收藏 8.66MB PPT 举报
在C++程序设计中,"禁写指针又禁写间接引用"是一个关键概念,它涉及到指针的常量性质和安全性。谭浩强在其著作《C++程序设计》中详细解释了这一特性。在C++中,通过使用`const`关键字,可以限制指针的行为,确保程序的稳定性和防止意外修改。当声明一个指针为`const`类型时,如`const int *const px = &x;`,意味着`px`是一个指向常量整型变量的指针常量。这意味着: 1. `px`本身不能被重新赋值,即`px = ...`是非法的,因为它的地址是固定的。 2. 通过`px`访问的值(*px)也不能被修改,即使`px`指向的是一个可变的对象,比如`*px = ...`也是不允许的。 这种设计旨在防止程序员在无意间修改数据,增强代码的健壮性和可维护性。在定义这样的指针时,必须在初始化时赋予初始的指针值,如`const int *const px = &x;`表明`px`指向`x`的地址。 C++语言的发展历史中,从BCPL到B语言再到C语言,最后演变为C++,体现了编程语言的不断进化。C语言因其结构化、灵活性、高性能和良好的移植性受到欢迎,但其语法结构相对宽松,可能对初学者造成挑战。然而,这同时也给予了经验丰富的开发者更大的设计自由度。C++在继承C语言的基础上,增加了面向对象的特性,使得它成为了一种更强大的工具。 理解并正确使用`const`修饰的指针和间接引用对于C++程序员来说至关重要,它能帮助编写更加安全和高效的代码。同时,学习C++语言的过程中,理解和掌握语言的规范,包括其语法和特点,如结构化、灵活的运算符和位运算等,是提高编程技能的关键。