gpt4 book ai didi

ios - 防止重复输入消息

转载 作者:行者123 更新时间:2023-11-29 01:30:35 24 4
gpt4 key购买 nike

我有两个几乎相同的类,但一个是为 OS X 制作的,另一个是为 iOS 制作的。然后我有一个像这样的头文件:

#ifdef __MAC_OS_X_VERSION_MIN_REQUIRED
#import "ClassForOSX.h"
#else
#import "ClassForIOS.h"
#endif

问题是因为这两个类都包含在项目中,xcode 编译了这两个类并且我有很多关于错误的重复条目,因为两个类的方法具有相同的名称。

有没有办法阻止类编译,即使它包含在项目中,除非该类是针对目标的?

是的,我知道我可以从目标中包含/排除类,但我正在处理两侧和多个目标中的数百个类,这会产生大量最终会出错的包含/排除操作。我想知道代码中是否有某种解决方案可以在目标正确的情况下允许类进行编译。

最佳答案

使用目标最适合您的情况。但你可以用代码来做到这一点

注意在目标->build设置的预处理器宏中添加或删除 __MAC_OS_X_VERSION_MIN_REQUIRED

ClassForIOS.h文件

#ifndef __MAC_OS_X_VERSION_MIN_REQUIRED

#import <Foundation/Foundation.h>

@interface ClassForIOS : NSObject

// interface

@end

#endif

ClassForIOS.m 文件

#ifndef __MAC_OS_X_VERSION_MIN_REQUIRED

#import "ClassForIOS.h"

@implementation ClassForIOS

// implementation code

@end

#endif

ClassForOSX.h 文件

#ifdef __MAC_OS_X_VERSION_MIN_REQUIRED

#import <Foundation/Foundation.h>

@interface ClassForOSX : NSObject

// interface

@end

#endif

ClassForOSX.m 文件

#ifdef __MAC_OS_X_VERSION_MIN_REQUIRED

#import "ClassForOSX.h"

@implementation ClassForOSX

// implementation code

@end

#endif

关于ios - 防止重复输入消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33511973/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com