C++指针调用函数详解:谭浩强实例教程

需积分: 9 5 下载量 126 浏览量 更新于2024-08-23 收藏 8.9MB PPT 举报
在C++程序设计中,理解如何使用指向函数的指针变量是非常重要的概念。谭浩强的教材中,这一部分主要讲解了以下几个关键知识点: 1. **定义指向函数的指针变量**:在C++中,函数指针是一种特殊的指针类型,它指向一个函数的地址。例如,`int (*)(int, int)` 是一个声明,表示它可以指向一个接受两个 `int` 参数并返回 `int` 值的函数。在提供的代码片段中,`int (*p)(int, int);` 定义了一个名为 `p` 的指针,用于存储 `max(int, int)` 这个函数的地址。 2. **给指针变量赋值**:为了调用函数,首先需要将函数的地址赋值给指针。在这个例子中,`p=max;` 将 `max` 函数的地址赋给了 `p`。这样,`p` 就指向了 `max` 函数。 3. **通过指针变量调用函数**:`c=p(a,b);` 这一行实际上是间接调用 `max` 函数。通过指针 `p`,我们传递了 `a` 和 `b` 作为参数,然后函数被调用并返回结果,最后将结果存储在 `c` 变量中。 4. **与一般的函数调用区别**:相比于直接调用函数,使用指针调用的方式提供了一种灵活性,允许在运行时动态地改变调用哪个函数。这种技术在设计模式、回调函数等场景中十分有用。 5. **C++语言背景**:谭浩强的教材提及了C++语言的发展历史,C++是在C语言基础上发展起来的,吸收了其他语言的优点,如面向对象特性,使得它成为一种强大的编程语言。C语言的特点包括结构化、高效、可移植性和一定程度的灵活性,但也存在语法不够严密、调试相对困难的问题。 6. **C++语言的应用**:由于C++的这些特点,它广泛应用于各种领域,从系统软件开发(如UNIX操作系统)到科学计算,以及大型系统和控制程序的设计。 掌握如何使用指向函数的指针变量对于提升C++编程能力至关重要,它扩展了程序的灵活性,并展示了C++作为现代编程语言的强大之处。通过理解并熟练运用这一技术,程序员能够更好地实现代码重用和动态调用,提高代码的可维护性和扩展性。