C++(11):成员函数饰词

C++11为成员函数提供了通过左值调用还是右值调用的装饰词:

cpp 复制代码
#include <iostream>
using namespace std;
 
class A{
	public:
	void fun() &{
		cout << "fun() &" << endl;
	}
	void fun() &&{
		cout << "fun() &&" << endl;
	}

};

A createA(){
	return A();
}

int main(){
 
	A a;
	a.fun(); // 调用 fun() &
	createA().fun(); // 调用 fun() &&
	
	return 0;
}

运行程序输出:

fun() &

fun() &&

可见通过这种方式,我们可以区分通过左值还是右值来调用成员函数。

相关推荐
郝学胜-神的一滴2 小时前
Qt 高级开发 024:QSplitter分裂器布局精讲
开发语言·c++·qt·程序人生·用户界面
QT-Neal2 小时前
C++ 内存详解
c++
晚风吹红霞2 小时前
深入浅出C++ STL:从入门到精通的核心指南
开发语言·c++
智者知已应修善业3 小时前
【51单片机数码管驱动2位显示0-99按键3短按+1长按+10按键4短按-1长按清零,按键不影响数码管显示】2023-8-16
c++·经验分享·笔记·算法·51单片机
ulias2123 小时前
深挖进程间通信的奥秘
java·linux·服务器·开发语言·c++·算法
森林古猿13 小时前
论CDQ分治
c++·学习·算法·排序算法
米啦啦.3 小时前
基于主从Reactor模型的高性能网络通信框架
c++·多线程通信
为何创造硅基生物4 小时前
C++ 类的 static 成员函数
c++