IOS将boost类声明为类变量

Posted

技术标签:

【中文标题】IOS将boost类声明为类变量【英文标题】:IOS declare boost class as class variable 【发布时间】:2016-08-03 16:21:42 【问题描述】:

我正在尝试使用 boost 库类进行一些套接字通信。我需要将这个变量声明为类实例,所以我声明如下,

@interface Custom_View : UIView
    boost::asio::io_service io_service_2;
    tcp::resolver r_2(io_service_2);
    client c_2(io_service_2);
    boost::thread* dvr_thread_2;

越来越像错误

Custom_View.h:46:23: Unknown type name 'io_service_2'; did you mean 'boost::asio::io_service'?
Custom_View.h:47:16: Unknown type name 'io_service_2'; did you mean 'boost::asio::io_service'?
Custom_View.h:46:19: Field 'r_2' declared as a function
Custom_View.h:47:12: Field 'c_2' declared as a function

如何解决此错误。

【问题讨论】:

【参考方案1】:

如果您尝试声明一个 Objective-C 类或静态变量,您必须在 @interface 声明中的大括号之外进行。例如(如果您没有声明任何实例变量,可以省略“”):

@interface SubclassName : SuperclassName

Type variableName;

话虽如此,我对 boost 库并不熟悉,而且在您的代码中声明的变量似乎不是有效的 Objective-C。一个快速的谷歌搜索带来了这个 GitHub 项目,它可能会帮助你朝着正确的方向前进:https://github.com/mz2/boostoniphone

【讨论】:

我需要将它用作类实例变量,因为我将在我的代码中将这个类用作不同的实例。

以上是关于IOS将boost类声明为类变量的主要内容,如果未能解决你的问题,请参考以下文章

iOS分类延展和子类的区别

将字符串评估为类变量

将 PHP 数组转换为类变量

我可以将实体框架上下文保留为类变量吗?

static

类的成员