遍匈 / Swift / Swift縮殻 /

Swift嚥C囂冱住札園殻

<貧匯准 和匯准>
恬葎匯嶽辛嚥 Objective-C 屢札距喘議囂冱?Swift 匆醤嗤匯乂嚥 C 囂冱議窃侏才蒙來?泌惚低議旗鷹嗤俶勣?Swift 匆戻工阻才械需議 C 旗鷹潤更詞栽園殻議園殻圭塀。

児云方象窃侏

Swift 戻工阻匯乂才 C 囂冱議児云窃侏泌char?int?float?double吉勺議 Swift 児云方象窃侏。隼遇?宸乂 Swift 議宰伉児云窃侏岻寂旺音嬬咨塀議屢札廬算?泌 Int。咀緩?峪嗤低議旗鷹苧鳩勣箔万断扮壅聞喘宸乂窃侏?遇 Int 辛參壓販採低?聞喘万議扮昨聞喘。
C 窃侏 Swift 窃侏
bool CBool
char, signed char CChar
unsigned char CUnsignedChar
short CShort
unsigned short CUnsignedShort
int CInt
unsigned int CUnsignedInt
long CLong
unsigned long CUnsignedLong
long long CLongLong
unsigned long long CUnsignedLongLong
wchar_t CWideChar
char16_t CChar16
char32_t CChar32
float CFloat
double CDouble

旦訟

Swift 哈序阻喘崎NS_ENUM栖炎芝議販採 C 欠鯉議旦訟窃侏。宸吭龍彭涙胎旦訟峙頁壓狼由崇尺珊頁壓徭協吶議旗鷹嶄協吶議?輝麿断擬秘欺 Swift 扮?麿断議念弸兆各繍瓜舜僅。箭泌?心宸倖 Objective-C 旦訟?
//Objective-C
typedef NS_ENUM(NSInteger, UITableViewCellStyle) {
 UITableViewCellStyleDefault,
 UITableViewCellStyleValue1,
 UITableViewCellStyleValue2,
 UITableViewCellStyleSubtitle
};
壓 Swift 嶄宸劔栖糞孖?
//Swift
enum UITableViewCellStyle: Int {
 case Default
 case Value1
 case Value2
 case Subtitle
}
輝艇俶勣峺?匯倖旦訟峙扮?聞喘參泣?.?蝕遊議旦訟兆各?
//Swift
let cellStyle: UITableViewCellStyle = .Default 
Swift 匆哈序阻炎嗤NS_OPTIONS崎僉?。遇僉?議佩葎窃貌噐哈序議旦訟?僉?珊辛參屶隔匯乂了荷恬?泌 ??| 才 ?。壓 Objective-C 嶄?低喘匯倖腎議僉?譜崔炎幣冴葎巣?0?。壓 Swift 嶄?聞喘 nil旗燕短嗤販採僉?。

峺寞

Swift 勝辛嬬閲窒斑艇岷俊恵諒峺寞。隼遇?輝艇俶勣岷俊荷恬坪贋議扮昨?Swift 匆葎艇戻工阻謹嶽峺寞窃侏。和中議燕聞喘 Type 恬葎媼了憲窃侏兆各栖燕幣囂隈議啌符。
斤噐歌方?聞喘參和啌符?
C 鞘隈 Swift 鞘隈
const void * CConstVoidPointer
void * CMutableVoidPointer
const Type * CConstPointer<Type>
Type * CMutablePointer<Type>

斤噐卦指窃侏?延楚才歌方窃侏議謹蚊肝峺寞?聞喘參和啌符?
C 鞘隈 Swift 鞘隈
void * COpaquePointer
Type * UnsafePointer<Type>

斤噐窃?class?窃侏?聞喘參和啌符?
C 鞘隈 Swift 鞘隈
Type * const * CConstPointer<Type>
Type * __strong * CMutablePointer<Type>
Type ** AutoreleasingUnsafePointer<Type>

C 辛延峺寞

輝匯倖痕方瓜蕗苧葎俊鞭CMutablePointer<Type>歌方扮?宸倖痕方辛參俊鞭和双販採匯倖窃侏恬葎歌方?
  • nil?恬葎腎峺寞勧秘
  • 匯倖CMutablePointer<Type>窃侏議峙
  • 匯倖荷恬方頁 Type 窃侏議恣峙議補秘補竃燕器塀?恬葎宸倖恣峙議坪贋仇峽勧秘
  • 匯倖補秘補竃 Type[] 峙?恬葎匯倖方怏議軟兵峺寞勧秘?旺拝万議伏凋巓豚繍壓宸倖距喘豚寂瓜决海

泌惚艇崧宸劔蕗苧阻匯倖痕方?
//Swift
func takesAMutablePointer(x: CMutablePointer<Float>) { /*...*/ } 
椎担艇辛參聞喘參和販採匯嶽圭塀栖距喘宸倖痕方?
//Swift
var x: Float = 0.0
var p: CMutablePointer<Float> = nil
var a: Float[] = [1.0, 2.0, 3.0]
takesAMutablePointer(nil)
takesAMutablePointer(p)
takesAMutablePointer(&x)
takesAMutablePointer(&a)
輝痕方瓜蕗苧聞喘匯倖CMutableVoidPointer歌方?椎担宸倖痕方俊鞭販採才CMutablePointer<Type>屢貌窃侏議Type荷恬方。

泌惚艇宸劔協吶阻匯倖痕方?
//Swift
func takesAMutableVoidPointer(x: CMutableVoidPointer) { /* ... */ } 
椎担艇辛參聞喘參和販採匯嶽圭塀栖距喘宸倖痕方?
//Swift
var x: Float = 0.0, y: Int = 0
var p: CMutablePointer<Float> = nil, q: CMutablePointer<Int> = nil
var a: Float[] = [1.0, 2.0, 3.0], b: Int = [1, 2, 3]

takesAMutableVoidPointer(nil)
takesAMutableVoidPointer(p)
takesAMutableVoidPointer(q)
takesAMutableVoidPointer(&x)
takesAMutableVoidPointer(&y)
takesAMutableVoidPointer(&a)
takesAMutableVoidPointer(&b)

C 械峺寞

輝匯倖痕方瓜蕗苧葎俊鞭CConstPointer<Type>歌方扮?宸倖痕方辛參俊鞭和双販採匯倖窃侏恬葎歌方?
  • nil?恬葎腎峺寞勧秘
  • 匯倖CMutablePointer<Type>, CMutableVoidPointer, CConstPointer<Type>, CConstVoidPointer, 賜宀壓駅勣秤趨和廬算撹CConstPointer<Type>議AutoreleasingUnsafePointer<Type>峙
  • 匯倖荷恬方頁 Type 窃侏議恣峙議補秘補竃燕器塀?恬葎宸倖恣峙議坪贋仇峽勧秘
  • 匯倖Type[]方怏峙?恬葎匯倖方怏議軟兵峺寞勧秘?旺拝万議伏凋巓豚繍壓宸倖距喘豚寂瓜决海
泌惚艇宸劔協吶阻匯倖痕方?
//Swift
func takesAConstPointer(x: CConstPointer<Float>) { /*...*/ } 
椎担艇辛參聞喘參和販採匯嶽圭塀栖距喘宸倖痕方?
//Swift
var x: Float = 0.0
var p: CConstPointer<Float> = nil
takesAConstPointer(nil)
takesAConstPointer(p)
takesAConstPointer(&x)
takesAConstPointer([1.0, 2.0, 3.0])
輝痕方瓜蕗苧聞喘匯倖CConstVoidPointer歌方?椎担宸倖痕方俊鞭販採才CConstPointer<Type> 屢貌窃侏議Type荷恬方。  泌惚艇宸劔協吶阻匯倖痕方?
//Swift 
func takesAConstVoidPointer(x: CConstVoidPointer) { /* ... */ } 
椎担艇辛參聞喘參和販採匯嶽圭塀栖距喘宸倖痕方?
//Swift
var x: Float = 0.0, y: Int = 0
var p: CConstPointer<Float> = nil, q: CConstPointer<Int> = nil
takesAConstVoidPointer(nil)
takesAConstVoidPointer(p)
takesAConstVoidPointer(q)
takesAConstVoidPointer(&x)
takesAConstVoidPointer(&y)
takesAConstVoidPointer([1.0, 2.0, 3.0])
takesAConstVoidPointer([1, 2, 3])

徭強瞥慧音芦畠峺寞

輝匯倖痕方瓜蕗苧葎俊鞭AutoreleasingUnsafePointer<Type>歌方扮?宸倖痕方辛參俊鞭和双販採匯倖窃侏恬葎歌方?
  • nil?恬葎腎峺寞勧秘
  • 匯倖AutoreleasingUnsafePointer<Type>峙
  • 凪荷恬方頁圻兵議?鹸崙欺匯倖匝扮議短嗤侭嗤宀議産喝曝議匯倖補秘補竃燕器塀?乎産喝曝議仇峽勧弓公距喘?旺卦指扮?産喝曝嶄議峙紗墮?隠贋?旺嶷仟蛍塘欺荷恬方。

廣吭?宸倖双燕短嗤淫根方怏。

泌惚艇宸劔協吶阻匯倖痕方?
//Swift
func takesAnAutoreleasingPointer(x: AutoreleasingUnsafePointer<NSDate?>) { /* ... */ } 
椎担艇辛參聞喘參和販採匯嶽圭塀栖距喘宸倖痕方?
//Swift
var x: NSDate? = nil
var p: AutoreleasingUnsafePointer<NSDate?> = nil

takesAnAutoreleasingPointer(nil)
takesAnAutoreleasingPointer(p)
takesAnAutoreleasingPointer(&x)
廣吭?C 囂冱痕方峺寞短嗤瓜 Swift 哈序。

畠蕉械楚

壓 C 才 Objective-C 囂冱坿猟周嶄協吶議畠蕉械楚氏徭強仇瓜 Swift 園咎哈序旺恂葎 Swift 議畠蕉械楚。

圓侃尖峺綜

Swift 園咎匂音淫根圓侃尖匂。函遇旗岻議頁?万割蛍旋喘阻園咎扮奉來?伏撹塘崔?才囂冱蒙來栖頼撹屢揖議孔嬬。咀緩?Swift 短嗤哈序圓侃尖峺綜。

酒汽崎

壓 C 才 Objective-C?艇宥械聞喘議#define峺綜協吶議匯倖崎械方?壓 Swift?艇辛參聞喘畠蕉械楚栖旗紋。箭泌?匯倖畠蕉協吶#define FADE_ANIMATION_DURATION 0.35?壓 Swift 辛參聞喘let FADE_ANIMATION_DURATION = 0.35栖厚挫議燕峰。喇噐酒汽議喘噐協吶械楚議崎氏瓜岷俊瓜啌符撹 Swift 畠蕉楚?Swift 園咎匂氏徭強哈序壓 C 賜 Objective-C 坿猟周嶄協吶議酒汽崎。

鹸墫崎

壓 C 才 Objective-C 嶄聞喘議鹸墫崎壓 Swift 嶄旺短嗤嚥岻斤哘議協吶。鹸墫崎頁椎乂音喘栖協吶械楚議崎?遇頁喘栖協吶淫根弌凄催???痕方議崎。艇壓 C 才 Objective-C 聞喘鹸墫議崎頁喘栖閲窒窃侏殊臥議尫崙才屢揖旗鷹議嶷鹸斥強。隼遇?崎匆氏恢伏Bug才嶷更議是佃。壓 Swift 嶄低辛參岷俊聞喘痕方才刑侏栖器欺揖劔議丼惚。咀緩?壓 C 才 Objective-C 坿猟周嶄協吶議鹸墫崎壓 Swift 頁音嬬聞喘議。

園咎塘崔

Swift 旗鷹才 Objective-C 旗鷹參音揖議圭塀序佩訳周園咎。Swift 旗鷹辛參功象伏撹塘崔議得勺塘序佩嗤訳周議園咎。伏撹塘崔淫凄 true 才 false 忖中峙?凋綜佩炎崗?才和燕嶄議峠岬霞編痕方。艇辛參聞喘-D <?Flag?>峺協凋綜佩炎崗。
痕方 嗤丼歌方
os() OSX, iOS
arch() x86_64, arm, arm64, i386
廣吭?arch(arm) 議伏撹塘崔音氏葎64了 arm 譜姥卦指true?輝旗鷹塰佩壓葎32了議 ios 庁亭匂匂扮?arch(i386) 議伏撹塘崔卦指true。
匯倖酒汽議訳周園咎俶勣參和旗鷹鯉塀?
#if build configuration
 statements
#else
 statements
#endif
匯倖喇巣倖賜謹倖嗤丼議 Swift 囂鞘蕗苧議statements?辛參淫凄燕器塀?囂鞘才陣崙送囂鞘。艇辛參耶紗駆翌議更秀塘崔勣箔?訳周園咎傍苧喘 && 才 | | 荷恬憲參式 ? 荷恬憲?耶紗訳周陣崙翠喘 ?elseif?
#if build configuration && !build configuration
 statements
#elseif build configuration
 statements
#else
 statements
#endif
嚥 C 囂冱園咎匂議訳周園咎屢郡?Swift 訳周園咎囂鞘駅倬頼畠頁徭淫根才囂隈嗤丼議旗鷹翠。宸頁咀葎 Swift 旗鷹軸聞短嗤瓜園咎?匆勣畠何序佩囂隈殊臥。
<貧匯准 和匯准>

AltStyle によって変換されたページ (->オリジナル) /