<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Objective-C 具有多個參數的方法

      我們繼續就《Objective-C 分離接口和實現文件》一文中的 Fraction 類說事。如果有一個方法能夠只用一條消息即可設置 numerator 同時又可設置 denominator,那該有多好啊!沒問題,通過列出每個連續的方法并用冒號將其連起來,就可以定義一個接受多個參數方法。用冒號連接的參數將成為這個方法名的一部分。例如,方法名 addEntryWithName: andEmail: 表示接收兩個參數的方法,這兩個參數可能是姓名和電子郵件地址。方法 addEntryWithName: andEmail: andPhone: 是接收以下 3 個參數的方法,一個姓名,一個電子郵件地址和一個電話號碼。
       
      同時設置 numerator 和 denominator 的方法可以命名為 setNumerator: andDenominator: 你可以采取以下形式:
       
      [myFraction setNumerator: 1 andDenominator: 3];
       
      這種方法還不錯。實際上,這是命名方法的首選方式。但是必須為方法指定更易閱讀的名稱。例如:一種更通用的做法,setTo: over: 它可讀性會比前面來得更強。
       
      [myFraction setTo: 1 over: 3];
       
      接下來,讓我們把這個新方法應用到 Fraction.h 中去:
       
      01 #import <Foundation/Foundation.h>
      02 
      03 // Define the Fraction class
      04 
      05 @interface FractionNSObject
      06 {
      07     int numerator;
      08     int denominator;
      09 }
      10 
      11 @property int numerator, denominator;
      12 
      13 -(void)        print;
      14 -(void)        setTo: (int) n over: (int) d;
      15 -(double)    convertToNum;
      16 
      17 @end
       
      然后,在實現文件中添加新方法定義:
       
      01 #import "Fraction.h"
      02 
      03 @implementation Fraction
      04 
      05 @synthesize numerator, denominator;
      06 
      07 -(void) print
      08 {
      09     NSLog (@"%i/%i", numerator, denominator);
      10 }
      11 
      12 -(double) convertToNum
      13 {
      14     if (denominator != 0)
      15         return (double) numerator / denominator;
      16     else
      17         return 1.0;
      18 }
      19 
      20 -(void) setTo: (int) n over: (int) d
      21 {
      22     numerator = n;
      23     denominator = d;
      24 }
      25 
      26 @end
       
      最后,在 main.m 中應用它:
       
      01 #import "Fraction.h"
      02 
      03 int main (int argc, const char * argv[])
      04 {
      05     NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
      06     Fraction *aFraction = [[Fraction alloc] init];
      07     
      08     [aFraction setTo: 100 over: 200];
      09     [aFraction print];
      10     
      11     [aFraction setTo: 1 over: 3];
      12     [aFraction print];
      13     [aFraction release];
      14     
      15     [pool drain];
      16     return 0;
      17 }
       
      范例 7-2 完成,最終輸出結果如下:
       

      100/200

      1/3

      posted @ 2012-12-06 23:26  mr.coke  閱讀(564)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 久久国产精品色av免费看| 久久综合伊人77777| 久久无码专区国产精品| 国产精品无码免费播放| 亚洲人成网站免费播放| 亚洲卡1卡2卡3精品| 免费国产一级特黄aa大片在线| 国产一区二区日韩在线| 日韩一区二区三区无码影院| 精品国产精品国产偷麻豆| 人妻精品动漫H无码中字| 精品蜜臀国产av一区二区| 国产精品爽黄69天堂a| 欧美性猛交xxxx乱大交丰满| 亚洲av无码乱码在线观看野外| 国产精品日韩专区第一页| 亚洲精品久久久久午夜福禁果tⅴ| 国产美女精品一区二区三区| 99riav国产精品视频| 曲麻莱县| 性XXXX视频播放免费直播| 人人爽亚洲aⅴ人人爽av人人片| 久久三级国内外久久三级| 一卡2卡三卡4卡免费网站| 欧美交a欧美精品喷水| 精品国产熟女一区二区三区| 国产又粗又猛又爽又黄| 中文国产人精品久久蜜桃| 国产福利免费在线观看| 天堂a无码a无线孕交| 亚洲一区成人在线视频| 亚洲成人精品综合在线| 加勒比无码人妻东京热| 可以直接看的无码av| 国产高清小视频一区二区| 日本视频一两二两三区| 国产精品自拍一二三四区| 中文字幕亚洲一区二区三区| 精品在免费线中文字幕久久| 国产69精品久久久久99尤物| 老司机午夜精品视频资源|