• OC5_@class关键字


    //
    //  ClassB.h
    //  OC5_@class关键字
    //
    //  Created by zhangxueming on 15/6/24.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import <Foundation/Foundation.h>
    #import "ClassA.h"
    
    @interface ClassB : NSObject
    {
        ClassA *_a;
    }
    
    @property (copy,nonatomic)NSString *nameB;
    
    - (void)printClassB;
    
    @end
    
    
    
    
    //
    //  ClassB.m
    //  OC5_@class关键字
    //
    //  Created by zhangxueming on 15/6/24.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import "ClassB.h"
    
    @implementation ClassB
    
    - (void)printClassB
    {
        NSLog(@"name = %@", _a.nameA);
    }
    
    @end
    //
    //  ClassA.h
    //  OC5_@class关键字
    //
    //  Created by zhangxueming on 15/6/24.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import <Foundation/Foundation.h>
    //#import "ClassB.h"//
    @class ClassB;
    
    @interface ClassA : NSObject
    {
        ClassB *_b;
    }
    
    @property (copy,nonatomic)NSString *nameA;
    
    - (void)printClassA;
    
    @end
    
    
    //
    //  ClassA.m
    //  OC5_@class关键字
    //
    //  Created by zhangxueming on 15/6/24.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import "ClassA.h"
    #import "ClassB.h"
    
    @implementation ClassA
    
    - (void)printClassA
    {
        NSLog(@"%@", _b.nameB);
    }
    
    @end
    //
    //  main.m
    //  OC5_@class关键字
    //
    //  Created by zhangxueming on 15/6/24.
    //  Copyright (c) 2015年 zhangxueming. All rights reserved.
    //
    
    #import <Foundation/Foundation.h>
    #import "ClassA.h"
    #import "ClassB.h"
    
    //A-->B  B-->A
    //#import 关键字 引用类的类型及类中定义的方法,包含在头文件中,可能导致循环包含,需要用@class打断循环链
    
    //@class 关键字, 只引用类的类型不引用类中的方法,如果要使用类中的方法,需要在对应的.m文件中用#import包含
    
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
            
            
            
            
        }
        return 0;
    }
  • 相关阅读:
    日期正则表达式yyyyMMdd
    Markdown语法
    su: Authentication failure问题
    Git初始配置
    layui的layer.open()方法查看缩略图 原图缩放
    入驻博客园三年
    php学习笔记之动态生成一组单选button
    opencv直方图拉伸
    c++ 中const的使用
    LeetCode131:Palindrome Partitioning
  • 原文地址:https://www.cnblogs.com/0515offer/p/4598521.html
Copyright © 2020-2023  润新知