Objective c 由于施工人员采用驼峰套管,swift3/4至目标c架桥不美观

Objective c 由于施工人员采用驼峰套管,swift3/4至目标c架桥不美观,objective-c,swift,Objective C,Swift,有没有比这更难看的符号: @objc public init (NSError nserror: NSError) { ? 这就是要有: [[MyErrorWrapperClass alloc] initWithNSError:error]; 而不是一个更丑陋的人: [[MyErrorWrapperClass alloc] initWithNserror:error]; 在objc侧,可获得更清晰的swift签名: @objc public init (nserror: NSError)

有没有比这更难看的符号:

@objc public init (NSError nserror: NSError) {
?

这就是要有:

[[MyErrorWrapperClass alloc] initWithNSError:error];
而不是一个更丑陋的人:

[[MyErrorWrapperClass alloc] initWithNserror:error];
在objc侧,可获得更清晰的swift签名:

@objc public init (nserror: NSError) {

好的,这里真正的问题是‘如何在swift函数上为objc提供自定义签名’

答案是用括号传递信号,如下所示:

@objc(initWithNSError:)
public init (nserror: NSError) {
    // Implementation
}

您是将Swift代码导入Objective-C还是反之亦然你在“而不是一个更丑的那个”之前和之后的两行是相同的,这让你的问题变得不清楚。“丑”到底是什么?丑陋是主观的。。。例如,“我认为你的问题的陈述很难看”。话虽如此,这就是你所需要的:
@objc(initWithNSError:)
@MartinR这两者的外壳是不同的。@Alladinian是的!这正是我想要的:翻拍。请随意发布作为接受和投票的答案。@AntonTropashko完成。很高兴这有助于清理暴露于objective c的嵌套swift类的情况,以避免objc命名空间污染。万分感谢!