问题标签 [libsigc++]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
434 浏览

cmake - 将 libsigc++ 与 cmake 一起使用

我发现很多使用pkg-configelse的描述,但没有一个像 Boost 或 SDL 那样简单。有没有像这样更简单的方法:

如果不是,将 SigC++ 与 cmake 一起使用的最佳方法是什么?

0 投票
1 回答
466 浏览

c++ - 构建 libsigc++ 失败(std::basic_ostream 显式实例化)

我正在尝试根据此页面在 mac os 10.8 (Mountain Lion) 上安装 ardor ( http://ardour.org ) 依赖项:http: //ardour.org/building_osx_native.html

ardor 开发人员制作了两个脚本来执行此操作:

  • build-gtk-stack (gtk+, glib, pango, cairo...)
  • build-ardour-stack (boost, rapto, libvorbis...)

它们可以在 subversion.ardour.org/svn/ardour2/branches/2.0-ongoing/tools/ 中找到。

我在使用 build-ardour-stack 脚本时遇到了麻烦,尤其是在构建 libsigc++ 时。

我有这个痕迹:

hello_world.cc:

我的 gcc 是:

你怎么看?

谢谢!

0 投票
2 回答
398 浏览

c++ - 官方 libsigc++ 2.0 示例中的错误?

我正在关注官方文档,libsigc++-2.0并找到了这个示例

正如您所看到的,该类的run()函数和构造函数AlienDetector都没有定义,因此这段代码不应该编译(但文档认为这段代码可以工作是理所当然的)。

更奇怪的是,如果我同时定义run()了类的构造函数和构造函数,无论如何我都看不到库的效果,显然信号不起作用,并且run在 no slot 中调用时main被激活。

我在这里忘记了什么?这东西应该怎么改写?

0 投票
2 回答
869 浏览

c++ - 带有 lambda 的 sigc++ 给出错误:不应忽略 void 值

我有一个libsigc++连接到 c++11 lambda 的信号。

我想将信号的返回类型从void更改为非无效

这给出了一个错误:

void 值没有被忽略,因为它应该被忽略

lambda 是否可以使用这种使用模式?

0 投票
2 回答
1987 浏览

c++ - sigc::mem_fun 并从类方法中传递参数

在 gtkmm 中,我可以在构造函数中使用类似这样的东西:

但我想使用一种方法来设置项目的属性,例如:

所以我可以在构造函数中使用这样的东西:

请问有什么想法吗?

0 投票
2 回答
571 浏览

c++ - 连接信号时gtkmm编译器错误

我正在开发一个带有 GUI 的应用程序,但在尝试在连接处为另一个信号(signal_changed,来自 Gtk::ComboBox)发出信号(sig_showList,来自 View)时遇到问题,我真的很感激你帮助。代码看起来像这样:

“查看.h”

“查看.c”

我用g++ -std=c++98 *.cpp -o out $(pkg-config gtkmm-3.0 --cflags --libs). 我得到的错误是:

[实际类称为“Vista”]

好吧,我不知道那是什么意思!此外,这已经发生了,不知何故我设法解决了它,但经过一些重新格式化和重新设计后,它又出现了,我不知道该怎么办。它肯定与 combo->signal_clicked().connect(...) 行有关,因为当我删除它时编译正常。

0 投票
1 回答
391 浏览

c++ - libsigc++ 如何将函数转换为槽?

我正在使用一些基本的信号代码,但我无法弄清楚这个函数是如何作为参数传入的。我在libsigc++ 教程中遇到了这段代码:

AlienDetector 有这个成员变量:

warn_people 是一个带有简单打印语句的函数:

标准库中是否有使用这样的函数的示例?编译器如何理解“寻找”正在传入的函数?

0 投票
2 回答
625 浏览

c++ - 将带有静态回调参数的 C 函数包装到接受私有成员作为回调的 C++ 函数

我想包装这个 C 函数,

在 C++ 函数中,例如,

我可以将任何静态函数传递给sqlite3_exec(),但我想将BookOfSouls对象的私有成员函数作为回调函数传递,并且我想从该函数访问对象的私有数据。

0 投票
0 回答
1313 浏览

c++ - 结构的前向声明 - 编译错误,“匿名结构的声明必须是定义”

我正在编译一个使用sigc++. 它失败并出现此错误:

有问题的代码是:

我想不通的是为什么编译器认为它是一个匿名结构。有问题的行不只是一个前向声明吗?

0 投票
1 回答
644 浏览

c++ - sigc::mem_fun 中的 C++“调用不匹配”错误

sigc::mem_fun用来将作为类成员的处理程序函数连接到 GTKMM 事件。我sigc::mem_fun从声明处理函数的同一个类中调用。

这是错误:

另一件奇怪的事情是为什么编译器会在第二次sigc::mem_fun调用时抛出错误。是它是如何工作的,还是与第一次调用是在指针上完成,第二次调用是在对象本身上完成的事实有关?