ホームページ  >  に質問  >  本文

ios - swift函数的一些疑惑

学习swift的时候看到一些关于函数的命名规范和使用的疑惑。

比如下面这个函数,它是首字母大写的,同时它是定义在类外部的。

let data = UIImagePNGRepresentation(image)
  1. 这种写在类外面的函数叫做什么函数呢?

  2. 什么时候需要写在类外面呢?

  3. 为什么它是首字母大写呢?

ringa_leeringa_lee2717日前277

全員に返信(5)返信します

  • 大家讲道理

    大家讲道理2017-04-17 17:41:31

    これは関数であり、クラス内の関数をメソッドと呼びます。これは C の関数です。C には型がないため、このようにしか記述できません。最初の文字は大文字です。これは UIKit の下にある関数なので、その前に UI があります。

    返事
    0
  • 迷茫

    迷茫2017-04-17 17:41:31

    1. 一般に、クラスの内部部分はメソッド (メソッド) と呼ばれ、外部部分は関数 (関数) と呼ばれます。

    2. 外部に記述する場合、この関数を呼び出すときに Class または Class インスタンスを通じて削除する必要はありません。

    3. 最初の文字が大文字である理由は、Apple の古くからの伝統によるものです。 Objective-C 時代には名前空間というものが存在しないため、名前の競合が頻繁に発生する可能性があります。したがって、Cocoa フレームワークのクラスにはすべて、NS、UI などの接頭辞が付けられます (簡単な例を挙げると、UIImage や CGImage など、接頭辞がない場合は想像できると思います)。 Apple はプレフィックスがすべて大文字であることに同意しているため、これが当てはまります。

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 17:41:31

    1. 一般に、クラスの内部部分はメソッド (メソッド) と呼ばれ、外部部分は関数 (関数) と呼ばれます。

    2. 外部に記述する場合、この関数を呼び出すときに Class または Class インスタンスを通じて削除する必要はありません。

    3. 最初の文字が大文字である理由は、Apple の古くからの伝統によるものです。 Objective-C 時代には名前空間というものが存在しないため、名前の競合が頻繁に発生する可能性があります。したがって、Cocoa フレームワークのクラスにはすべて、NS、UI などの接頭辞が付けられます (簡単な例を挙げると、UIImage や CGImage など、接頭辞がない場合は想像できると思います)。 Apple はプレフィックスがすべて大文字であることに同意しているため、これが当てはまります。

    返事
    0
  • 阿神

    阿神2017-04-17 17:41:31

    public func after_lay(time:NSTimeInterval,block:dispatch_block_t){
    let time_uint64:UInt64 = UInt64(time)
    let late =dispatch_time(DISPATCH_TIME_NOW, Int64(time_uint64 * NSEC_PER_SEC))
    dispatch_after( late,dispatch_get_main_queue(),block)
    }
    このように、このような関数を自分で記述することもでき、呼び出すときにクラスや構造体の列挙を使用する必要はありません。直接使用できます

    リーリー

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:41:31

    UIImagePNGRepresentation() これは C 関数です。 OCはC言語をコンパイルできます。この関数は UIKit フレームワークで定義されています。

    返事
    0
  • キャンセル返事