欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++中使用function和bind綁定類成員函數的方法詳解

 更新時間:2020年11月23日 11:23:37   作者:dxgzg  
這篇文章主要介紹了C++中使用function和bind綁定類成員函數的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

定義一個普通的類

class Test1{
public:
	void fun(int val){
		cout<<"hello world "<<val<<endl;
	}
};

開始第一個測試

int main(){
	Test1 t;
	function<void(int)> pf = std::bind(&Test1::fun,t,2);
	pf(4); //
	return 0;
}

輸出的值是2,說明pf傳進去的4并沒有什么用,在bind的時候值已經綁定死了,但是pf()這樣不給參數會報錯。

在這里插入圖片描述

如果我們想自定義參數,使用占位符,std::placeholders::_1,可以看下圖,輸出的值是4了

int main(){
	Test1 t;
	function<void(int)> pf = std::bind(&Test1::fun,t,std::placeholders::_1);
	pf(4); 
	return 0;
}

在這里插入圖片描述

使用C++11新特性lambda表達式,注意[]要有一個&,這個意思是指可修改當前作用域的變量。不過這樣頁會是邦死狀態(tài)

int main(){
	Test1 t;
	function<void(int)> pf = [&](int val){t.fun(2);};
	pf(4); 
	return 0;
}

所以宗上所述,如果想自定義值的話,還是使用std::placeholders::_1 … std::placeholders::_n吧!

到此這篇關于C++中使用function和bind綁定類成員函數的方法詳解的文章就介紹到這了,更多相關C++ function和bind綁定類成員函數內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C語言數據結構詳細解析二叉樹的操作

    C語言數據結構詳細解析二叉樹的操作

    二叉樹可以簡單理解為對于一個節(jié)點來說,最多擁有一個上級節(jié)點,同時最多具備左右兩個下級節(jié)點的數據結構。本文將詳細介紹一下C++中二叉樹的實現和遍歷,需要的可以參考一下
    2022-04-04
  • OpenMP task construct 實現原理及源碼示例解析

    OpenMP task construct 實現原理及源碼示例解析

    這篇文章主要為大家介紹了OpenMP task construct 實現原理及源碼示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • C語言與C++中const的用法對比

    C語言與C++中const的用法對比

    C語言中的const與C++有很大的不同,在C語言中用const修飾的變量仍是一個變量,表示這個變量是只讀的,不可顯示地更改,而在C++中用const修飾過后,就變成常量了
    2022-04-04
  • 手拉手教你如何理解c/c++中的指針

    手拉手教你如何理解c/c++中的指針

    當你對C越來越熟悉時,你會發(fā)現把與指針攪和在一起的"類型"這個概念分成"指針的類型"和"指針所指向的類型"兩個概念,是精通指針的關鍵點之一,這篇文章主要給大家介紹了關于c/c++中指針的相關資料,需要的朋友可以參考下
    2021-10-10
  • C語言文件操作詳情(一)

    C語言文件操作詳情(一)

    這篇文章主要介紹了C語言文件操作詳情,主要討論的是數據文件,通過處理的磁盤上的文件展開主題內容介紹,需要的小伙伴可以參考一下,希望對你的學習有所幫助
    2022-04-04
  • 聊一聊C++虛函數表的問題

    聊一聊C++虛函數表的問題

    C++是面向對象的語言(與C語言主要區(qū)別),所以C++也擁有多態(tài)的特性。下面通過代碼看下C++虛函數表的問題,感興趣的朋友一起看看吧
    2021-10-10
  • 詳細解析C語言中的開方實現

    詳細解析C語言中的開方實現

    這篇文章主要介紹了詳細解析C語言中的開方實現,包括一道要求精度的整數開方的題目,需要的朋友可以參考下
    2015-08-08
  • C語言實現簡單猜數字小游戲

    C語言實現簡單猜數字小游戲

    這篇文章主要為大家詳細介紹了C語言實現簡單猜數字小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • C++ Futures與Promises線程使用示例講解

    C++ Futures與Promises線程使用示例講解

    future和promise的作用是在不同線程之間傳遞數據。使用指針也可以完成數據的傳遞,但是指針非常危險,因為互斥量不能阻止指針的訪問;而且指針的方式傳遞的數據是固定的,如果更改數據類型,那么還需要更改有關的接口,比較麻煩
    2022-11-11
  • 簡單說說STL的內存管理

    簡單說說STL的內存管理

    <STL 源碼剖析>將其描述為空間配置器,理由是allocator可以將其它存儲介質(例如硬盤)做為stl 容器的存儲空間。由于內存是allocator管理的主要部分,因此,本文以STL內存管理為出發(fā)點介紹allocator
    2013-09-09

最新評論