C++基础---无返回值函数(void函数)
2015-09-04 16:43
381 查看
1. 无返回值函数(void函数)
1.1 void函数的定义
不带返回值的return语句只能用于返回类型为void的函数。在返回类型为void的函数中,return返回语句不是必需的,隐式的return发生在函数的最后一个语句完成时。一般情况下,返回类型是void的函数使用return语句是为了引起函数的强制结束,这种return的用法类似于循环结构中的break语句的作用。
1.2 void函数的实例
示例一:交换两个整型变量数值的函数#include <iostream> using namespace std; void swap(int& a, int&b) { if(a == b) { return;//若两值相等,无需比较,即让函数停止运行 } int temp; temp = a; a = b; b = temp; } int main() { int a=3, b=4; cout<<"交换前a=3, b=4"<<endl; swap(a,b); cout<<"交换后a="<<a<<", b="<<b<<endl; system("pause"); return 0; } =>交换前a=3, b=4 交换后a=4, b=3 这个函数首先检查两个值是否相等,如果相等则退出函数;如果不相等,则交换这两个值,隐式的return发生在最后一个赋值语句后。
示例二:void 的函数,可以返回另一个返回类型同样是void的函数的调用结果
#include <iostream> using namespace std; void do_swap(int &a, int &b) { int temp = a; a = b; b = temp; } void swap(int& a, int&b) { if(a == b) { //return false;//编译失败,提示"error C2562: “swap”:“void”函数返回值" return;//编译成功,不带返回值的return语句只能用于返回类型为void的函数 } return do_swap(a, b);//编译成功,void 的函数,可以返回另一个返回类型同样是void的函数的调用结果 } int main() { int a=3, b=4; cout<<"交换前a=3, b=4"<<endl; swap(a,b); cout<<"交换后a="<<a<<", b="<<b<<endl; system("pause"); return 0; } =>交换前a=3, b=4 交换后a=4, b=3 返回任何其他表达式的尝试都会导致编译时的错误。
参考文献:
[1]《C++全方位学习》范磊——第十三章
[2]《C++程序设计教程(第二版)》钱能——第五章、第六章、第七章
[3]《C++ Primer(第5版)》王刚 杨巨峰——第一章、第六章
[4] 百度搜索关键字:C++函数、void函数
相关文章推荐
- C++基础---函数的返回类型
- c语言描述之广度优先搜索——无权最短路径
- 《C++primer(第五版)》学习之路-第三章:字符串、向量和数组
- C++ I/0 Stream <setf and Manipulators>
- vc++出现warningC4819的处理方法
- C++基础---静态联编与动态联编
- C++基础---虚析构函数与纯虚析构函数
- C++继承访问方式
- c++中sort()及qsort()的用法总结
- C++基础---纯虚函数
- C语言排序实例(选择、冒泡、插入、折半、快速)
- C++基础---虚函数
- c++primer之顺序容器(容器库概览)
- C++基础---浅层及深层拷贝构造函数
- 黑马程序员——C语言结构体
- C++基础---构造函数与关键字explicit
- C++基础---构造函数与析构函数
- C++/CLR 使用(VS2012,VS2013,VS2015)编写Windows窗体应用程序
- C语言实现快速排序
- 浅拷贝——C++编译器默认提供的赋值运算符