Tôi nhận được lỗi function definition is not allowed here
trên tất cả ba enum
s. Gần đây tôi đã cập nhật lên Xcode 6.0.1 và hiện tôi nhận được lỗi đó. Làm cách nào để khắc phục lỗi này, tôi có nên tránh sử dụng macro này không. Tôi cũng đã đặt SDK mục tiêu thành ios 6.0 hỗ trợ các macro này.NS_ENUM - định nghĩa chức năng không được phép tại đây
BConstants.h
#ifndef asdf_BPConstants_h
#define asdf_BPConstants_h
typedef NS_ENUM(NSUInteger, BTheme) {
kField
};
typedef NS_ENUM(NSUInteger, BItem) {
kBox
};
typedef NS_ENUM(NSUInteger, BMovementState) {
kTouchUp,
kTouchDown
};
#endif
Để được rõ ràng, thứ tự của dòng vấn đề ở đây. Bạn phải đặt 'NS_ENUM (...' block ** sau ** bạn nhập vào. @alfavata (câu trả lời dưới đây) là đúng, 'Foundation' là đủ. Nếu bạn cần' UIKit', nhập 'UIKit 'mang' Foundation 'cùng với nó. – mbm29414