黑马程序员技术交流社区

标题: OC点语法 [打印本页]

作者: wehuazi    时间: 2014-10-21 17:23
标题: OC点语法
本帖最后由 wehuazi 于 2014-10-21 17:32 编辑
  1. #import <Foundation/Foundation.h>

  2. @interface Point2D : NSObject
  3. // x值的getter和setter
  4. @property double x;

  5. // y值的getter和setter
  6. @property double y;

  7. // 同时设置x和y
  8. - (void)setX:(double)x andY:(double)y;
  9. @end

  10. @implementation Point2D
  11. // 同时设置x和y
  12. - (void)setX:(double)x andY:(double)y
  13. {
  14.         self.x = x;
  15.         self.y = y;
  16. }
  17. @end
  18. int main()
  19. {
  20.     Point2D *p1 = [Point2D new];
  21.     p1.x = 15;
  22.     p1.y = 20;
  23.     Point2D *p2 = [Point2D new];
  24.       // 问题代码
  25.     p2.X:10 andY:20;  //  怎么才能用点来调用对象方法呢?以实现同时设置x和y
  26.     NSLog(@"p1=(%f,%f) and p2=(%f,%f)",p1.x,p1.y,p2.x,p2.y);
  27.     return 0;
  28. }

复制代码
求大神帮忙解决!谢谢了!


作者: wehuazi    时间: 2014-10-21 20:32
顶一下!求大神解决啊!
作者: duzhong    时间: 2014-10-21 21:11
来来来,帮你顶下!找大神去帮你你
作者: 弹琴骚年    时间: 2014-10-21 21:46
点语法应该只能调用对象的setter和getter方法吧。。
作者: a1130003724    时间: 2014-10-21 23:35
学习   围观
作者: LeeWong    时间: 2014-10-21 23:56
@property  还没看到  帮顶
作者: John_chow    时间: 2014-10-22 00:33
你们都买了苹果本子啦???
作者: 崔石炫    时间: 2014-10-22 00:39
点语法只能单独设置或者获取一个属性的,不能同时操作两个属性的。这个没办法……
作者: wehuazi    时间: 2014-10-22 09:31
弹琴骚年 发表于 2014-10-21 21:46
点语法应该只能调用对象的setter和getter方法吧。。

就是让它调用setter方法啊
作者: wehuazi    时间: 2014-10-22 09:36
崔石炫 发表于 2014-10-22 00:39
点语法只能单独设置或者获取一个属性的,不能同时操作两个属性的。这个没办法…… ...

点语法编译时不是可以写成setter或getter吗?设置两个属性应该没问题吧?
作者: 弹琴骚年    时间: 2014-10-22 11:34
wehuazi 发表于 2014-10-22 09:31
就是让它调用setter方法啊

同时设置x和y
- (void)setX:(double)x andY:(double)y;

你的这个同时设置x和y的方法应该算对象方法,不能算setter和getter方法了





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2