为啥“错误:'UITextView'之前的预期说明符限定符列表”(但不适用于其他视图类型!)

Posted

技术标签:

【中文标题】为啥“错误:\'UITextView\'之前的预期说明符限定符列表”(但不适用于其他视图类型!)【英文标题】:Why "error: expected specifier-qualifier-list before 'UITextView'" (but not for other view types!)为什么“错误:'UITextView'之前的预期说明符限定符列表”(但不适用于其他视图类型!) 【发布时间】:2010-08-12 16:22:02 【问题描述】:

关于 specifier-qualifier-list 的问题已经被(询问)并回答了,但没有一个给出的回答者能解决我的问题。

我的代码很简单:

#import <UIKit/UIKit.h>

@interface TableCellWithTextView: UITableViewCell
    
@private
    UITextView *theTextView;


@property (nonatomic, retain) UITextView *theTextView;

@end

但是我得到编译器错误“错误:'UITextView'之前的预期说明符限定符列表”

如果我用UIView 替换UITextView,错误就会消失。更奇怪的是,在我看来(不是双关语;-))我也可以毫无问题地使用任何其他视图类(UITextLabelUIImageView 等)

但最奇怪的是,在我的项目的其他地方,编译(并且有效)

#import <UIKit/UIKit.h>


@interface ToDoDetailTextViewEditCell : UITableViewCell

@private
    UITextView *theTextView;


@property (nonatomic, retain) UITextView *theTextView;

@end

【问题讨论】:

【参考方案1】:

好的,人们不会为难自己。当我将文件拖到一个全新的项目并编译所有内容时,事情变得很奇怪。当我删除旧副本,将它们从新的“临时”项目中拖回并重新编译所有内容时,最终很奇怪。

所以,不知道问题出在哪里,但一定是出了什么问题。这些文件是我手动创建的全新文件夹结构的一部分,并且我还一直在进行一些重构、重命名文件,所以我猜某处的一些引用刚刚搞砸了。我试过很多次清洁,但无济于事。实际上我没有尝试的是重新启动 Xcode(尽管我一直在考虑这样做)。

但平等。现在可以了。

【讨论】:

以上是关于为啥“错误:'UITextView'之前的预期说明符限定符列表”(但不适用于其他视图类型!)的主要内容,如果未能解决你的问题,请参考以下文章

为啥使用 glTranslatef?为啥不直接更改渲染坐标?

为啥 DataGridView 上的 DoubleBuffered 属性默认为 false,为啥它受到保护?

为啥需要softmax函数?为啥不简单归一化?

为啥 g++ 需要 libstdc++.a?为啥不是默认值?

为啥或为啥不在 C++ 中使用 memset? [关闭]

为啥临时变量需要更改数组元素以及为啥需要在最后取消设置?