std::function賦值的幾種方法


定義:

#include <functional>

std::function<void(const QString&)> myPrintFunction;

 

函數指針

void directPrint(const QString &msg)
{
    qDebug()<<"direct print:"<<msg;
}

myPrintFunction = directPrint;

 

lambda

myPrintFunction = [](const QString &s)
{
    qDebug()<<"lambda print:"<<s;
};

std::bind

Screen* screen = new Screen();
PrintFunction= std::bind(&Screen::print, screen, std::placeholders::_1);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM