C++面向对象程序设计:深入理解指向指针的指针变量

需积分: 14 4 下载量 138 浏览量 更新于2024-07-13 收藏 8.34MB PPT 举报
"本文主要介绍了C++中的面向对象程序设计,并着重讲解了指向指针的指针变量这一概念。在C++中,指针是一种强大的工具,能够存储其他变量的地址。而指向指针的指针变量(也称为二级指针)则是指针的指针,它可以存储指向指针变量的地址。这种数据类型在处理动态内存分配、函数参数传递以及某些高级数据结构(如链表和树)时特别有用。 文章提到了一个简单的例子来阐述这个概念: ```cpp int i, *p, **prt; i = 2000H; // 假设这是整型变量i的值 p = &i; // p指向i的地址,3000H prt = &p; // prt指向p的地址,5000H ``` 在这个例子中,`i`是一个整型变量,`p`是一个指向`i`的指针,而`prt`是一个指向`p`的指针。因此,`*p`会解引用为`i`的值,而`**prt`则会解引用为`p`所指向的值,即`i`。 C++语言的发展历程也在此简要提及,C++起源于C语言,由Bjarne Stroustrup在20世纪80年代为了增强C语言的面向对象特性而创建。C++不仅保留了C语言的效率和灵活性,还引入了类、对象、继承、多态等面向对象编程的关键概念,使得软件设计更加模块化和可重用。 C语言的特点包括其结构化编程特性,丰富的运算符(包括位运算),良好的可移植性,以及程序设计的自由度。然而,C语言的语法较为宽松,这给初学者带来了一定的学习难度,而且调试程序相对复杂。尽管如此,一旦熟悉了C语言,开发者可以编写出高效且通用的代码。 随着C语言的普及,人们发现了一些局限性,例如缺乏内置的面向对象支持和内存管理机制。C++就是为了解决这些问题而出现的,它通过提供更高级别的抽象和封装,增强了程序的可维护性和复用性。" 这段内容主要关注了C++中的指针和指针的指针变量,以及C++语言的基本特点和历史背景,为理解C++面向对象编程打下了基础。