0

我对 C++ 不是很熟练,所以我觉得这很棘手。

我有一个看起来与这个非常相似的类:Is it possible to use signal inside a C++ class? .,但在信号处理方法中,我必须使用实例变量。

我尝试的第一件事是将变量设置为静态,但它没有帮助。我应该怎么办?谢谢海尼克

4

1 回答 1

1

如果您想使用实例变量,那么您将需要一个类实例,因为您无法从静态方法访问实例变量。您的下一个问题将是如何获取类实例,对此有几个选项。您可以创建一个通常不受欢迎的全局变量,也可以考虑创建一个Singleton。您引用的问题的已接受答案的选项 2 中使用的方法类似于单例,因此这也可能是一种选择。

如果您查看静态方法和属性,这可能会更清楚。Bruce Eckel 的Thinking in C++是一本出色的免费在线 C++ 书籍,应该会有所帮助。

于 2012-10-11T20:34:17.850 回答