[英]C++ stack in Objective-C++
我想在Objective-C中使用C ++堆棧類型,但是遇到了一些問題。 這是我想做的事的一個樣本:
#import <stack>
#import <UIKit/UIKit.h>
@interface A : NSObject {
stack<SEL> selectorStack;
}
@end
不幸的是,這不能編譯。 在弄亂了一段時間代碼並嘗試了不同的方法之后,我似乎找不到找到實現此目的的方法。 有人可以告訴我在Objective-C對象中使用C ++堆棧的最佳方法,或者甚至可以嗎?
謝謝。
更新:
好吧,KennyTM的答案適用於我的示例文件,但是由於某些原因,當我嘗試重命名該類時,它退出了工作。 這是我現在擁有的代碼:
#import <stack>
#import <UIKit/UIKit.h>
@interface MenuLayer : NSObject {
std::stack<SEL> selectorStack;
}
@end
編譯器吐出以下錯誤:
stack: No such file or directory
expected specifier-qualifier-list before 'std'
你有沒有嘗試過
@interface A : NSObject {
std::stack<SEL> selectorStack;
}
對於第二個問題,請確保您沒有意外重命名以.m
而不是.mm
結尾的文件。 否則,C ++標頭不在標頭搜索路徑中(當然,您不能使用C ++)。
另外,如果標頭包含在某些普通的Objective-C文件( .m
)中,您最終會遇到相同的問題。 您可以通過使用不透明指針來避免這種情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.