C++程序设计:内部函数与外部函数解析
需积分: 10 156 浏览量
更新于2024-08-18
收藏 8.66MB PPT 举报
"谭浩强的经典C++课件,讲解了内部函数和外部函数的概念,以及C++程序设计的基本知识,包括C++的发展历史、特点等。"
在C++编程中,函数是组织代码的重要方式,它们可以分为内部函数(静态函数)和外部函数。内部函数,也就是静态函数,是通过`static`关键字定义的。这样的函数有以下特点:
1. **作用域限制**:内部函数的作用域仅限于定义它的源文件中,其他文件无法直接访问和调用。这种特性使得静态函数在实现模块化和封装时非常有用,可以避免不必要的外部干扰。
2. **内存管理**:静态函数的变量在函数调用之间保持其值,因为它们存储在静态存储区,而不是在栈上分配。
3. **链接性质**:由于它们不是全局可见的,编译器不会为静态函数生成外部符号,因此在链接阶段不会与其他文件中的同名函数冲突。
外部函数是C++中的默认函数类型,它们可以被其他文件调用。外部函数的声明通常用`extern`关键字,以告知编译器这个函数是在其他地方定义的。例如,`extern`关键字用于在需要使用外部函数的文件中引入函数声明,确保编译器知道该函数的存在。
```cpp
// 在另一个文件中定义的外部函数
void enter_string(char* str);
// 在当前文件中使用外部函数
extern void enter_string(char* str);
```
外部函数具有以下特点:
1. **全局可见性**:外部函数可以在程序的任何地方被调用,只要正确地包含了函数声明。
2. **链接需求**:如果在多个文件中定义相同的外部函数,链接器会检查这些函数的定义是否一致,如果不一致,会产生链接错误。
3. **作用域广泛**:外部函数可以跨越多个源文件,方便实现大型项目中的功能共享和模块化。
C++语言本身具有丰富的特性,如C语言的高效和灵活性,以及面向对象编程的支持。C++的起源可以追溯到C语言,由B语言发展而来,最初是为了编写UNIX操作系统。C++在C的基础上增加了类、模板、异常处理等概念,使其成为一个强大的、通用的编程语言。
C++的主要特点包括:
1. **结构化编程**:C++支持结构化编程,使代码易于理解和维护,同时提供灵活的控制结构。
2. **混合级别编程**:它允许低级编程(如内存管理和位操作)与高级编程(如抽象和面向对象)相结合,提高了程序的效率和灵活性。
3. **可移植性**:C++编写的程序可以在不同的计算机平台和硬件上轻松移植,只需极少或无需修改。
4. **语法灵活性**:虽然这为程序员提供了极大的自由度,但也可能导致对语法理解不足的初学者遇到挑战,特别是在调试和错误排查方面。
学习C++需要对语法规则有深入的理解,虽然调试可能较为复杂,但一旦掌握,就能编写出高效、可维护的代码。
157 浏览量
2010-03-20 上传
2024-06-20 上传
2023-12-12 上传
2024-06-20 上传
2023-07-28 上传
2023-06-27 上传
2023-07-28 上传
2024-07-14 上传
受尽冷风
- 粉丝: 28
- 资源: 2万+
最新资源
- 明日知道社区问答系统设计与实现-SSM框架java源码分享
- Unity3D粒子特效包:闪电效果体验报告
- Windows64位Python3.7安装Twisted库指南
- HTMLJS应用程序:多词典阿拉伯语词根检索
- 光纤通信课后习题答案解析及文件资源
- swdogen: 自动扫描源码生成 Swagger 文档的工具
- GD32F10系列芯片Keil IDE下载算法配置指南
- C++实现Emscripten版本的3D俄罗斯方块游戏
- 期末复习必备:全面数据结构课件资料
- WordPress媒体占位符插件:优化开发中的图像占位体验
- 完整扑克牌资源集-55张图片压缩包下载
- 开发轻量级时事通讯活动管理RESTful应用程序
- 长城特固618对讲机写频软件使用指南
- Memry粤语学习工具:开源应用助力记忆提升
- JMC 8.0.0版本发布,支持JDK 1.8及64位系统
- Python看图猜成语游戏源码发布