C++编程:谭浩强禁写间接引用解析

需积分: 14 0 下载量 131 浏览量 更新于2024-07-14 收藏 8.82MB PPT 举报
"禁写间接引用-c语言谭老先生力作" C语言中“禁写间接引用”是一个重要的概念,主要用于增强程序的安全性和稳定性。在声明一个指针变量时,如果在指针前加上`const`关键字,那么这个指针变量就指向了一个不可修改的实体,也就是我们所说的“禁写间接引用”。例如,`const int *p;`声明了一个指向整型常量的指针p。这意味着通过指针p不能改变其所指向的整数值,`*p=`这样的赋值语句是不允许的,因为这会尝试修改常量的值,这是不合法的。 然而,值得注意的是,这里的“禁写”只针对指针所指向的对象,而不影响指针自身。也就是说,尽管`*p`不能被改写,但指针变量p仍然可以被赋予新的地址,即可以改变p所指向的内存位置。例如,`p = &another_int;`这样的语句是允许的,这将使指针p指向另一个整型变量`another_int`。 C++程序设计是C语言的扩展,C++从C语言发展而来,增加了面向对象编程、泛型编程和异常处理等特性。C++保留了C语言的大部分特点,包括结构化编程能力、高效的代码生成以及良好的可移植性。C++的“const”关键字也有类似的作用,可以用于修饰变量、函数参数、成员函数等,以确保某些数据或操作的不变性。 C语言的主要特点包括: 1. 结构化:C语言是一种结构化的编程语言,支持模块化开发,使得大型程序的组织更加有序。 2. 高低结合:C语言具有高级语言的抽象特性,同时也支持底层的位操作,适合系统级编程和应用级编程。 3. 可移植性:C语言编写的程序可以轻易地在不同的计算机平台上运行,只需微小的修改或无需修改。 4. 语法灵活:C语言的语法相对宽松,给予程序员较大的自由度,但这也意味着对于初学者来说,理解和调试程序可能会有较大挑战。 C++在C语言的基础上添加了类、模板、虚函数等面向对象编程的特性,以及STL(标准模板库),极大地提高了代码的复用性和可维护性。尽管C++的语法和概念更加复杂,但它提供的强大功能使得它成为现代软件开发中的重要工具。