当前位置: 首页 > news >正文

电子商务网站建设的结论淘宝站内推广方式有哪些

电子商务网站建设的结论,淘宝站内推广方式有哪些,无锡江阴做网站公司,新闻网站哪个做的好在C语言中,传递函数指针是非常常见的操作。 在C语言中,使用C语言一致的方法传递全局函数指针,或者传递静态函数指针也很常见。 不过如果遇到想传递非静态成员函数时,可以参考以下示例代码。 #ifndef _WORKER_HPP_ #define _WOR…

在C语言中,传递函数指针是非常常见的操作。

在C++语言中,使用C语言一致的方法传递全局函数指针,或者传递静态函数指针也很常见。

不过如果遇到想传递非静态成员函数时,可以参考以下示例代码。

#ifndef _WORKER_HPP_
#define _WORKER_HPP_#include <iostream>
#include <unistd.h>
#include <functional>
#include <chrono>
#include <iomanip>
#include <sstream>class Worker {
public:// 设置回调函数void registerCallback(std::function<void(int, std::string, long)> cb) {this->mCallback = cb;}void startWork() {using namespace std::literals;const std::chrono::time_point<std::chrono::system_clock> now = std::chrono::system_clock::now();const std::time_t t_c = std::chrono::system_clock::to_time_t(now);int i = 1008;std::stringstream ss;ss << std::put_time(std::localtime(&t_c), "%F %T");std::string s = ss.str();long l = __cplusplus;mCallback(i, s, l);}private:std::function<void(int, std::string, long)> mCallback;};#endif

参考Manager内的work函数,列出了几种写法。

#ifndef _MANAGER_HPP_
#define _MANAGER_HPP_#include <functional>
#include <string>
#include <iostream>#include "worker.hpp"class Manager {
public:Manager(): mI(-1), mS("coco"), mL(-1L) {}virtual ~Manager() = default;public:void work() {using namespace std::placeholders;// 设置回调函数, 使用lambdaworker.registerCallback([this](int&& i, std::string&& s, long&& l) -> void {this->onMsgCallback(i, s, l);});// 设置回调函数,使用bind,搭配mem_fnauto ptr = std::mem_fn(&Manager::onMsgCallback);worker.registerCallback(std::bind(ptr, this, _1, _2, _3));// 不搭配mem_fnworker.registerCallback(std::bind(&Manager::onMsgCallback, this, _1, _2, _3));worker.startWork();}void print() {std::cout << __FUNCTION__ << " mI is " << mI << ", mS is " << mS << ", mL is " << mL << std::endl;}private:void onMsgCallback(int i, std::string s, long l) {std::cout << __FUNCTION__ << " i is " << i << ", s is " << s << ", l is " << l << std::endl;this->mI = i;this->mS = s;this->mL = l;}private:int mI;std::string mS;long mL;Worker worker;
};#endif

main示例:

int main()
{// 演示将非静态成员函数设置为回调函数{Manager manager;manager.print();manager.work();manager.print();}return 0;
}

 输出参考:

print mI is -1, mS is coco, mL is -1
onMsgCallback i is 1009, s is 2023-11-18 20:22:34, l is 201402
print mI is 1009, mS is 2023-11-18 20:22:34, mL is 201402

http://www.dinnco.com/news/6877.html

相关文章:

  • 通辽北京网站建设百度上做优化一年多少钱
  • 秦皇岛建设信息网站360建站官网
  • 网站sem怎么做促销策略的四种方式
  • 怎样做优惠券网站苏州seo培训
  • 网站建设征求意见宁波seo推广优化哪家强
  • 在discuz做网站培训总结怎么写
  • 住房和城乡建设部网站园林一级芒果视频怎样下载到本地
  • 假山网站如何做驻马店网站seo
  • 安丘市住房和城乡建设局网站关键词抓取工具都有哪些
  • pr培训seo优化技巧
  • 为什么做网站编辑无锡营销型网站制作
  • 超市网站建设方案东莞seo关键词
  • 大剧院网站建设优化器
  • 网站开发项目的简介个人在线网站推广
  • 视频网站开发技术开封网站推广公司
  • 网站开发所使用的浏览器如何自己制作网页
  • 好的宝安网站建设东莞全网营销推广
  • 霸州今日头条新闻最新杭州seo推广服务
  • 中企潍坊分公司网站自助友链平台
  • 重庆做网站外包公司深圳专门做seo的公司
  • 做网站有底薪吗友情链接作用
  • 南昌网站建设业务在线网页制作网站
  • 美橙云建站代引流推广公司
  • 交通局网站建设方案策划书论坛外链代发
  • 做网站和做平台的区别网页设计期末作业模板
  • vue.js 做网站手游推广加盟
  • 网站做301顶级域名需要绑定企业在线培训平台
  • 临朐网站建设建站建网站的详细步骤
  • 济南商城网站建设公众号营销
  • 什么网站能和欧美国家的人做笔友搜狗搜图