68-拾遗:令人迷惑的写法
来源:互联网 发布:小学英语单词软件 编辑:程序博客网 时间:2024/05/20 14:43
1、问题1
2、
int a = 0;class Test_1{public: static const int TS = 1;};class Test_2{public: struct TS { int value; };};template< class T >void test_class(){ //两种解读方式 typename T::TS * a; // 1. 通过泛指类型 T 内部的数据类型 TS 定义指针变量 a (推荐的解读方式) // 2. 使用泛指类型 T 内部的静态成员变量 TS 与全局变量 a 进行乘法操作}int main(int argc, char *argv[]){ test_class<Test_1>(); //error: no type named ‘TS’ in ‘class Test_1’ typename T::TS * a; //在Test_1的内部没有TS类型,只有变量,编译器默认认为TS为类型 test_class<Test_2>();//OK return 0;}
3、
4、
5、问题2
6、
#include <iostream>#include <string>using namespace std;//throw表示函数异常声明,这个函数可能抛出异常的类型都要显示指出,//若不指定异常类型throw(),则抛出的异常返回给上层,最终导致崩溃//terminate called after throwing an instance of 'char'//Aborted (core dumped)int func(int i, int j) throw(int, char){ if( (0 < j) && (j < 10) ) { return (i + j); } else { throw '0'; }}void test(int i) try{ cout << "func(i, i) = " << func(i, i) << endl;}catch(int j){ cout << "Exception: catch(int j)" << i << endl;}catch(...){ cout << "Exception..." << endl;}int main(int argc, char *argv[]){ test(5); test(10); return 0;}func(i, i) = 10Exception...
7、函数异常声明
8、小结
阅读全文
0 0
- 68-拾遗:令人迷惑的写法
- 令人迷惑的javascript
- 令人迷惑的隐藏规则
- VC++令人迷惑的几个问题。。。
- 令人迷惑的casyncsocket::shutdown()
- 令人迷惑的隐藏规则
- 令人迷惑的隐藏规则
- 令人迷惑的String类
- 令人迷惑的java相等问题
- Android里一些令人迷惑的属性
- 令人迷惑的CAP与ACID用语
- MFC DDE开发中令人迷惑的问题?
- 深度解析Windows最令人迷惑的两大进程
- 深度解析Windows最令人迷惑的两大进程
- 深度解析Windows最令人迷惑的两大进程
- 深度解析Windows最令人迷惑的两大进程
- MFC DDE开发中令人迷惑的问题?
- MFC DDE开发中令人迷惑的问题?
- web工程访问不用工程名
- [转载]Java多线程-工具篇-BlockingQueue
- 使用Python的matplotlib库生成随机漫步图
- 大番薯h5十二牛牛源码免费下载
- Android 性能分析工具TraceView
- 68-拾遗:令人迷惑的写法
- #define定义 简单理解
- 搭建cordova 打包app环境(android)
- 随便写写
- 消除列表之间的间隙/空白符
- git 回滚到之前某一commit
- elasticsearch相关文档
- npm发布代码
- Linux下安装oracle软件(grid、database)中文乱码问题解决