小编Wil*_*ing的帖子

重启应用程序后是否连接了NEVPNManager检查?

我使用框架编写VPN工具NetworkExtension.我可以连接IPSec的通过NEVPNManager.sharedManager,什么时候都能抢通知VPN连接状态改变.但是当我杀死应用程序并重新打开它时,NEVPNManager.Connect.Status总是零,比手段无法显示正确的连接状态.怎么解决?

ios nevpnmanager networkextension

6
推荐指数
2
解决办法
1846
查看次数

这个C宏是什么意思?

这是一个宏可以计算参数的数量.和代码如:

#define Y_TUPLE_SIZE_II(__args) Y_TUPLE_SIZE_I __args
#define Y_TUPLE_SIZE_PREFIX__Y_TUPLE_SIZE_POSTFIX ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,0

#define Y_TUPLE_SIZE_I(__p0,__p1,__p2,__p3,__p4,__p5,__p6,__p7,__p8,__p9,__p10,__p11,__p12,__p13,__p14,__p15,__p16,__p17,__p18,__p19,__p20,__p21,__p22,__p23,__p24,__p25,__p26,__p27,__p28,__p29,__p30,__p31,__n,...) __n

#define MPL_ARGS_SIZE(...) Y_TUPLE_SIZE_II((Y_TUPLE_SIZE_PREFIX_ ## __VA_ARGS__ ## _Y_TUPLE_SIZE_POSTFIX,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0))

// the running result ---------------------------------------

MPL_ARGS_SIZE(a,b,c,d,e,f,g)==7

MPL_ARGS_SIZE(a,b,c,d)==4
Run Code Online (Sandbox Code Playgroud)

如何理解

#define Y_TUPLE_SIZE_PREFIX__Y_TUPLE_SIZE_POSTFIX ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,0
Run Code Online (Sandbox Code Playgroud)

Y_TUPLE_SIZE_PREFIX_ ## __VA_ARGS__ ## _Y_TUPLE_SIZE_POSTFIX
Run Code Online (Sandbox Code Playgroud)

顺便说一下,我知道##(磅,磅)的用法和#define Y_TUPLE_SIZE_I的机制

c macros

5
推荐指数
1
解决办法
119
查看次数

标签 统计

c ×1

ios ×1

macros ×1

networkextension ×1

nevpnmanager ×1