本帖最后由 唐肖虎 于 2015-8-30 20:03 编辑
楼主只把父类和出错的子类的代码贴出来,希望大家帮我看看问题呀。这是父类
- #import <Foundation/Foundation.h>
- #pragma mark Animal的声明
- @interface Animal : NSObject
- {
- int _age;
- }
- -(void)eat:(NSString *)foodName;
- -(void)run;
- @end
复制代码 这是子类- #import <Foundation/Foundation.h>
- #import "Animal.h"
- //狗这个类要继承动物这个类
- /*
- 1、导入要继承的那个类的头文件
- 2、@interface Dog:父类名 (这里写Animal,不是NSObject)
- */
- @interface Dog : Animal
- -(void)lookHome;
- @end
复制代码 这是main里面的
- #import <Foundation/Foundation.h>
- #import "Animal.h"
- #import "Dog.h"
- int main(int argc, const char * argv[]) {
- @autoreleasepool {
- Animal *ani=[Animal new];
- ani->_age=1;
- [ani eat:@"玉米"];
- [ani run];
-
- Dog *di=[Dog new];
- [di eat:@"一坨新鲜的530"];
- [di run];
- [di lookHome];
- di->_age=3;
- }
- return 0;
- }
复制代码 楼主出错的地方在于两个di和ani—>age时发生错误,报错是因为protect。我想请问继承不是@public的吗?希望大家能详细的说一下啊,谢谢!
|
|