【问题标题】:boost function instantion with nothing什么都没有的提升函数实例
【发布时间】:2014-10-08 21:55:04
【问题描述】:

我目前在我的 dll 文件中使用以下代码:

typedef boost::function<void(int)> Function_Callback_type;

#pragma data_seg(".SHARED")
int common = 0 ;
Function_Callback_type  funct_callback;
#pragma data_seg()
#pragma comment(linker, "/section:.SHARED,RWS")

现在我想为funct_callback 赋值。我读到,如果某些内容保存在 dll 文件的共享数据段中,则需要对其进行初始化。我的问题是:如何将 funct_callback 初始化为空?

【问题讨论】:

    标签: c++ boost boost-function


    【解决方案1】:

    我的问题是如何将 funct_callback 初始化为空?

    如果你的意思是“没有功能”或“没有内容”:什么都不做,默认构造函数会被自动调用。

    如果您想分配一个什么都不做的空函数,请使用 lamda

    Function_Callback_type  funct_callback = [] (int) {};
    

    或者自己定义一个空函数并赋值。 (或具有空函数调用运算符并分配该类类型的临时函数的仿函数类)

    【讨论】:

      猜你喜欢
      • 2018-03-10
      • 1970-01-01
      • 1970-01-01
      • 2015-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多