C++中的几个冷僻关键字
来源:互联网 发布:手机制冷软件 编辑:程序博客网 时间:2024/04/29 00:19
(1)typeid
用于在运行时获取一个对象的类型,相当于函数原型:
const type_info &typeid(TYPE or expr);Base* pb = new Derived;cout << typeid( pb ).name() << endl; //prints "class Base *"cout << typeid( *pb ).name() << endl; //prints "class Derived"
(2)typename
主要用在模板函数(类)中,为了避免 class 可能带来的误会。
template<class TYPE> 等价于 template<typename TYPE>
(3)volatile
告诉编译用到这个变量时,该变量随时可能被外部改变,每次使用时都必须重新读取,而不是使用保存在寄存器里的备份。
如 volatile long ref;
(4)explicit
据MSDN: 该关键字用于修饰类的构造函数,用来禁止隐式转换。
class String{public: explicit String(const char *s); explicit String(const String &s);};String s1("abc"), s2(s1); //总是合法的用法String s1 = "abc", s2 = s1; //explicit时才会禁止
(5)mutable
据MSDN: 该关键字只能用于修饰类的非静态、非常量的成员变量,使得 const 成员函数内可以修改该成员变量。
class String{public: void func() const { m_num = 1; }private: mutable long m_num;};
- C++中的几个冷僻关键字
- "C++你知道吗?" 之 几个冷僻的关键字
- "C++你知道吗?" 之 几个冷僻的关键字
- c语言中的几个关键字
- java中的几个关键字
- C++中的几个关键字
- java中的几个关键字
- Objective-C几个关键字
- c++中的几个常用关键字
- C语言中的关键字
- C语言中的关键字
- C语言中的关键字
- C中的volatile关键字
- C语言中的关键字
- C语言中的关键字
- C语言中的关键字
- C 中的static关键字
- C中的volatile关键字
- 枚举MongoDB某一个数据库的所有对象c# samus
- NoSQL 之 Morphia 操作 MongoDB
- 模式识别-查找向量中元素之和最大的连续子向量---编程珠玑
- android学习笔记---49_屏幕适配,根据不同手机屏幕大小适配软件界面
- FailureExpectedCollector
- C++中的几个冷僻关键字
- installshield 创建文件夹遇到的问题——Component的ID来自哪里
- Oracle从软件安装到运行的全流程
- 2.response跳转: a.客户端跳转,地址栏改变; b.所有代码执行完毕后跳转; c.跳转后的页面不能使用上一个页面的request属性; d.使用地址重写传递参数(respon
- 黑马程序员__java IO流学习
- AM3359 BeagleBone开源开发与评估方案
- 那些隐藏在编码过程中的性能(二)
- 谷歌开发工具Android Studio安装使用图文教程
- jbpm设计流程之start与end与transaction