为了解决Qt信号槽(需要依赖moc机制和moc工具)的缺陷,我研发了本软件。本软件支持c++98并向后兼容(支持c++98及其后续版本)。
利用本软件,c++开发者可以在不依赖moc的前提下,实现c++对象的解耦合(信号发射对象与信号接收对象之间的解耦合),使用语法非常类似Qt的信号槽。
开发环境为ubuntu 14.04操作系统、c++编译器、STL等。
本软件的目标用户是c++软件开发者。本软件为开发者提供了如下模块和功能:
*) GObject类;信号发射者、信号接收者均需要继承此GObject类。
*) DEFINE_SIGNAL宏定义,用来定义信号;EMIT_SIGNAL宏定义,用来发射信号;
*) GObject::connect函数;开发者使用本函数,将发射者的信号连接到接收者的槽函数。连接成功后,发射者发射信号,接收者的槽函数将会被调用。
*) GObject::disconnect函数;开发者使用本函数,将发射者的信号与接收者的槽函数断开连接。断开连接后,发射者发射信号时,接收者的槽函数将不会被调用。
开发者可以将本软件放到开发环境中去编译和运行,并配合《用户文档.doc》来学习本软件的使用方法。