2016 - 2024

感恩一路有你

怎么调用类的成员函数 什么是常量函数?

浏览量:1790 时间:2021-03-11 18:09:15 作者:admin

什么是常量函数?

很多人忽略了语义定义和优化之间的关系。

例如,RVO(返回值优化),尽管大多数都支持它,但在语义上,仍然有一个复制构造函数。经过优化后,编译后的代码实际上永远不会运行copy构造函数,但是如果没有copy函数,编译器仍然会报告错误。因为在语义上,复制构造函数是被调用的。

例如,TCO(tail call optimization),虽然您编写了一个递归函数(tail call recursive),但在语义上,仍然会有函数调用,尽管实际编译的代码不会产生堆栈溢出。但这并不能保证。

类似地,常量折叠也是一种优化技术,它不能再在语义上保证运行时常量。一个合法的编译器根本无法进行这种优化。

@考古学家关于数千英里冰的例子展示了编译器常量的例子。从语义上讲,constexpr函数调用是在编译时执行的,而不是常量折叠优化的效果。

怎么调用类的成员函数 非常对象可以调用常成员函数 不同对象可以调用相同名称的函数

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。