A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

对象与方法的关系:
1.对象作为方法的参数
2.对象作为方法的返回值
具体看代码

  1. #import <Foundation/Foundation.h>

  2. @interface Person : NSObject
  3. {   @public
  4.     int _age;
  5.     NSString *_name;
  6. }
  7. -(void) changePerson:(Person *) per;
  8. -(Person *) returnPerson:(Person *)p;
  9. @end

  10. @implementation Person
  11. -(void) changePerson:(Person *)per{
  12.     per->_name = @"小明";
  13.     per->_age = 12;
  14. }
  15. -(Person *) returnPerson: (Person *)p{
  16.     p->_age = 20;
  17.     p->_name = @"花花";
  18.     return p;
  19. }
  20. @end

  21. int main(int argc, const char * argv[]) {
  22.     @autoreleasepool {
  23.         // insert code here...
  24.         Person *p1 = [Person new];
  25.         [p1 changePerson:p1];
  26.         NSLog(@"p1 经函数changePerson处理,姓名:%@,年龄:%d",p1->_name,p1->_age);
  27.         Person *p2 = [p1 returnPerson:p1];
  28.         NSLog(@"p1 经函数returnPerson处理,姓名:%@,年龄:%d",p1->_name,p1->_age);
  29.         NSLog(@"returnPerson函数返回的p2,姓名:%@,年龄:%d",p2->_name,p2->_age);
  30.         //输出结果
  31. //p1 经函数changePerson处理,姓名:小明,年龄:12
  32. //p1 经函数returnPerson处理,姓名:花花,年龄:20
  33. //returnPerson函数返回的p2,姓名:花花,年龄:20
  34.     }
  35.     return 0;
  36. }
复制代码



2 个回复

倒序浏览
赞,顶一个
回复 举报
好厉害,
回复 举报
您需要登录后才可以回帖 登录 | 加入黑马