2014-05-22 34 views
0

我很新的Xcode,所以請忍受與我。兩個不同的實現聲明在同一個.m與重複聲明(不同!)方法

我在一個靜態庫中有一個類,它在同一個文件中實現了兩個類。這兩個類是不同的,並且都隨機共享一個相同名稱和類型的方法。 Xcode是說這是一個「重複的方法聲明」錯誤,即使它們明確分爲兩個獨立的類。這是什麼樣的文件看起來像一個簡化:

@implementation ImageInfo 

- (NSString *) description { 
    //method stuff 
    return @"something_meaningful"; 
} 

@end 

// later on in the (same .m) file... 

@implementation Image 

- (NSString *) description { 
    //some more method stuff 
    return @"something_equally_meaningful"; 
} 

@end 

,我再次收到錯誤是:Duplicate declaration of method 'description'在這兩種功能。

請讓我知道,如果有任何其他信息,我可以提供。正如我所說,我是Xcode/Objective-C的新手,所以我希望它只是一些愚蠢的東西!謝謝!

+0

是否有一個原因,你聲明兩個類在相同的.m? – Logan

+0

不是。我希望能夠解決這個問題而不會分裂他們。代碼由Thrift框架生成。 – eatonphil

+1

我無法重現該問題。我將你的代碼粘貼到我的代碼中,添加@interface部分,並且一切都很好。結論:在這裏你還沒有告訴我們其他事情正在發生。我的猜測是這些類每個都有另一個「描述」(即問題不在於兩個類相沖突,而是每個類在內部發生衝突)。 – matt

回答

2

錯誤不是告訴你ImageImageInfo有衝突。它告訴你Image有兩個description實現,而ImageInfo有兩個description實現。

+0

是的,你是對的。這很愚蠢。 – eatonphil

+1

是的,「在一個文件」業務是一個完全的紅鯡魚。我懷疑如果你沒有看到所有的「描述」實現,它與「靜態庫」有關。 – matt