小编Lar*_*der的帖子

使用Clang抑制匿名结构警告 - "-fms-extensions"不起作用

我有一个Xcode项目,我使用一些第三方库和Visual Studio C代码与Clang一起编译.

在第三方库中,匿名结构用在头文件中(我无法真正改变它).因此我得到了这个警告:

"myfile.h:47:17:匿名结构是GNU扩展"

如此处所述,我试图在我的Xcode项目的C标志中传递"-fms-extensions":http://clang.llvm.org/docs/UsersManual.html#microsoft-extensions

没运气.知道怎么摆脱那个警告吗?

clang compiler-flags compiler-warnings suppress-warnings visual-c++

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

我可以创建非ARC类的ARC子类

我想子类化一个名为"ASIFormDataRequest"的类,它在我的项目目标中,编译器标志为"-fno-objc-arc".我可以创建一个使用ARC而没有问题的类的子类吗?

如果我这样做,Xcode不会抛出任何错误.有什么想法吗?

谢谢,拉尔斯

class objective-c automatic-ref-counting

4
推荐指数
1
解决办法
230
查看次数

如何在Python中使用"map"函数?(如何重写for循环?)

我有一个类的数组,我想创建它们的对象.这有效:

    classArray = [Auto, Wheel]
    objectArray = []
    for myClass in classArray:
        objectArray += [myClass()]
Run Code Online (Sandbox Code Playgroud)

我可以使用map函数来完成相同的操作吗?

    objectArray = map( ??? , classArray)
Run Code Online (Sandbox Code Playgroud)

如果这是一个愚蠢的问题,我道歉.我对Python很新.

谢谢!

python map

4
推荐指数
1
解决办法
473
查看次数

有没有办法检查是否获得了NSLock?

我正在研究多线程代码.数据访问通过"NSLock"对象锁定在几个部分中.我想确保在这些部分中调用的某些方法检查是否获取了适当的锁.

就像是:

assert([myLock isSet] == YES);
Run Code Online (Sandbox Code Playgroud)

我在NSLock中找不到像"isSet"这样的东西.是否设置了如何确保锁定的任何想法?

谢谢!

cocoa multithreading posix locking objective-c

3
推荐指数
2
解决办法
4787
查看次数

非8字节对齐的内存访问会导致iPhone 3GS与iOS 4.0的内存访问冲突

考虑以下Objective-C++ iPhone应用程序(TestMemAppDelegate.mm).它与iPhone上的EXC_BAD_ACCESS崩溃(带有iOS 4.0的3GS).它在模拟器中工作正常.它显然是一个内存对齐的东西,因为如果"DataA"结构在8字节边界上启动,它在iPhone上工作正常.

任何人都可以解释原因吗?这是ARM架构的一部分吗?ARM编译器?

@implementation TestMemAppDelegate


typedef struct DataA
{
 float    x;
 unsigned char  y;
};


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

 char* mem1 = (char*)malloc(4096);

 DataA* ptrA = (DataA*)(mem1 + 1); // Here we shift the alignment
 ptrA->x = 10.0f;
 printf("A: %.2f\n", ptrA->x); // Here it crashes



    // Add the view controller's view to the window and display.
    [window addSubview:viewController.view];
    [window makeKeyAndVisible];

    return YES;
}


@end
Run Code Online (Sandbox Code Playgroud)

memory iphone malloc arm objective-c++

2
推荐指数
1
解决办法
1853
查看次数

如何在接收端打开没有SSHD的shell?

我有一台没有 SSHD 的机器,我想从远程机器(我可以完全控制)在这台机器上打开一个 bash shell。

由于我在有限的机器上有 SSH,我配置了一个反向代理:

$ ssh -R 19999:localhost:22 remoteuser@remotemachine
Run Code Online (Sandbox Code Playgroud)

现在我在端口 19999 上建立了从“完全控制”机器到“受限”机器的连接。我将如何使用此设置打开外壳?

ssh shell sshd

2
推荐指数
1
解决办法
589
查看次数

如何使用curl查询LDAP组成员身份?

我想curl在命令行上使用a检查是否$USER是LDAP组的成员$GROUP

这有效:

curl --user $CREDS \
     "ldaps://ldap.foo.com/DC=ads,DC=foo,DC=com??sub?(sAMAccountName=$USER)" \ 
   | grep -a "memberOf: CN=$GROUP,OU=Distribution,OU=Groups,DC=ads,DC=foo,DC=com"
Run Code Online (Sandbox Code Playgroud)

不幸的是,该呼叫需要花费一些时间,并且返回许多我不感兴趣的信息。您知道是否存在更有效的方法吗?

curl ldap ldap-query

2
推荐指数
1
解决办法
1万
查看次数

如何在Perl中通过管道连接进程?

我想写它运行的程序的Perl脚本foo,并bar和流程stdoutfoo它发射到stdinbar以流方式.Perl脚本应该像这个bash命令一样:

$ foo | some-perl-code | bar
Run Code Online (Sandbox Code Playgroud)

我设法用下面的代码片段完成第一部分.我启动程序foo并打开管道阅读stdout.

open( my $pipe_fh, "foo |" );
while ( my $row = <$pipe_fh> ) {
   # do stuff
    print $row;
}
Run Code Online (Sandbox Code Playgroud)

我如何实现第二部分?如何 Perl脚本中$row向程序发出声音?bar

bash perl pipe

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