关于c++临时对象产生的规则
2012-04-08 13:35
281 查看
那么是否存在一些特定的情况是无论在什么实现里都一定会创建临时对象的啊??
C++规范要求的都是“表面现象”,对于临时对象这种具体实现的内容是不会做出要求的。
理想状态下原则就是“必要”。所谓必要,比如a = b; c = a; a = 0;从必要的角度上编译结果应该是c = b; a = 0;这样。临时对象也是一样,如果有必要存在就会存在。当然这个这只是理想状态,实际在于编译器的实现,并且没有规则。
这样一点就像前自增和后自增运算符一样,不同编译器有其不同的实现规则。
C++规范要求的都是“表面现象”,对于临时对象这种具体实现的内容是不会做出要求的。
理想状态下原则就是“必要”。所谓必要,比如a = b; c = a; a = 0;从必要的角度上编译结果应该是c = b; a = 0;这样。临时对象也是一样,如果有必要存在就会存在。当然这个这只是理想状态,实际在于编译器的实现,并且没有规则。
这样一点就像前自增和后自增运算符一样,不同编译器有其不同的实现规则。
相关文章推荐
- C++中临时对象的产生
- 浅析C++临时对象的产生相关问题
- 浅析C++临时对象的产生相关问题
- C++中临时对象的产生与运用
- 关于C++中的临时对象问题
- 浅析C++临时对象的产生相关问题
- 关于c++临时对象几个链接
- 关于C++中的临时对象问题
- 关于C++中的临时对象问题
- 关于C++中的临时对象/常与非常&左右值/的阐述
- c++临时对象及其产生条件
- C++中关于临时量和临时对象
- 关于C++中在函数中按值返回、临时对象、拷贝构造函数的一点理解
- C++中临时对象的产生与优化
- C++中临时对象产生
- C++产生的临时对象引用
- c++ 非常量引用产生临时对象
- 关于C++临时对象的一道题目
- 深度搜索C++对象模型1-关于对象
- c++ 中关于没有默认构造函数的成员类对象问题