java函数名没有加throw_C++函数声明后面加throw()的作用
C++里面为什么有时候在函数声明的时候在后面加throw()关键字?
解释:
C++函数后面加关键字throw(something)限制,是对这个函数的异常安全作出限制;这是一种异常规范,只会出现在声明函数时,表示这个函数可能抛出任何类型的异常。
void fun() throw(); //表示fun函数不允许抛出任何异常,即fun函数是异常安全的。
void fun() throw(...); //表示fun函数可以抛出任何形式的异常。
void fun() throw(exceptionType); // 表示fun函数只能抛出exceptionType类型的异常。
举例说明:
void GetTag() throw(int); // 表示只抛出int类型异常
void GetTag() throw(int,char); // 表示抛出in,char类型异常
void GetTag() throw(); // 表示不会抛出任何类型异常
void GetTag() throw(...); // 表示抛出任何类型异常
void GetTag() throw(int); 表示只抛出int类型异常,并不表示一定会抛出异常,但是一旦抛出异常只会抛出int类型,如果抛出非int类型异常,调用unexsetpion()函数,退出程序。
void GetTag() throw(); 假如你加一个throw()属性到你的永远不会抛出异常的函数中,编译器会非常聪明的知道代码的意图和决定优化方式。
java函数名没有加throw_C++函数声明后面加throw()的作用相关推荐
- C++之指针探究(十一):函数名的本质和函数指针
相关博文:C++之指针探究(十三):函数指针数组 相关博文:C++之指针探究(十二):指针.下标.数组及其作函数参数探究 相关博文:C++之指针探究(十一):函数名的本质和函数指针 相关博文:C++之 ...
- 函数名地址、函数名取地址、函数名解引用问题
以下,转载自http://blog.sina.com.cn/s/blog_6aafe9c90100xg2y.html 对一个函数进行 如下操作: 1.函数名地址 2.函数名取地址 3.函数名解引用 它 ...
- linux打印函数名,linux kernel 打印函数指针对应的函数名方法
linux kernel 打印函数指针对应的函数名方法 内核中函数指针用的很多,在debug 的时候能直接打印出一个函数指针对应的函数就会很方便. 打印裸指针(raw pointer)用 %p,%p除 ...
- 吐槽程序员的变量名和函数名(给变量和函数取名字时遇到的坑)
变量和函数在取名字的时候,一定要见名知意,不要用太宽泛的词! 能一看到函数名就知道这个函数是干嘛的,比写个注释看着舒服! 不要怕名字太长,宁愿名字长一点也比名字简短但又看不懂的名字要好! 名字清晰冗长 ...
- android 函数名注册,Android JNI 函数注册的两种方式(静态注册/动态注册)
在Android开发中,由于种种原因我们需要调用C/C++代码, 这个时候就要用到Android开发者都听说过的JNI(Java Native Interface)了, 在调用JNI相关方法之前, 要 ...
- 如何通过函数名的字符串运行函数(从dll动态库谈起,使用c++)
1.问题描述 比如现在有一个函数叫MyFunc,现在想通过函数名调用该函数,该怎么办呢? 2.概述 如果这个问题是JAVA语言,我们会很自然的想到反射来解决这个问题,但是c++中没有反射,该怎么办呢? ...
- c 打印 callback 函数名_Go 中的函数
1. 函数参数和返回值的写法 如果有多个参数是同一个类型,可以简略写: func testReturnFunc(v1,v2 int)(int,int) {x1 := 2 * v1x2 := 3 * v ...
- c++ public 函数名相同_C++虚函数、重载、覆盖
C++基础(五)虚函数.重载.覆盖.隐藏 虚函数总是跟多态联系在一起,引入虚函数可以使用基类指针对继承类对象进行操作!虚函数:继承接口(函数名,参数,返回值),但是实现不继承(函数体) 非虚函数:继承 ...
- python 使用函数名的字符串调用函数(4种方法)
先看一个例子: >>> def foo():print "foo">>> def bar():print "bar"> ...
最新文章
- linux 命令删除命令,Linux 命令之删除命令
- leetcode每日刷题计划-简单篇day8
- 沙滩鞋除臭法--针对常见户外沙滩鞋来讲
- dubbo服务者配置说明
- boost::hana::is_nothing用法的测试程序
- poj 2515 差分序列,排列组合
- 【东软实训】SQL多表链接
- 坦克大战python_Python语言学了没用?那只能说你是真的没有精通了Python语言
- 在整个数据库搜索某个字符串在哪个表的哪个字段中
- Anconda之常用命令汇总
- promise常见错误
- java学习class5
- asp.net使用Mysql乱码处理
- 菜鸟程序猿的工作心态
- vivo NEX的Usb调试模式在哪里,打开vivo NEXUsb调试模式的教程
- python语言后缀_在Python语言中,可以作为源文件后缀名的是
- 如何区分共射极放大电路与共基极放大电路?
- 关于刚安装的新系统的一些设置
- QQ通信原理--转载
- ntc温度控制程序 c语言,NTC热敏电阻温度计算以及C语言实现