LoginSignup
2
3

More than 3 years have passed since last update.

[Swift] アプリのサポートがiOS11以降であればIntとInt64を使い分ける必要はなかった話

Posted at

私は今までなんとなく、「値がデカくなる可能性がある整数にはInt64、そうでもない整数はInt」で変数宣言するように気を配ってきましたが、実行環境次第ではそんな考慮は不要、という話です。

本記事の前提環境:
・iOS 11以降
・Swift 5

冒頭のような考慮をしてきた背景としては、
Intの最大値・最小値は、『実行環境が32bitか64bitによって違う』という特性があって、32bitだと範囲が狭いためです。

最大値 最小値
Int 2147483647
9223372036854775807
-2147483648
-9223372036854775808
(実行環境が32bitか64bitによって違う)
Int64 9223372036854775807 -9223372036854775808

引用:意外と知られていないSwift数値型の細かい仕様

なので32bit環境のIntにおいては、例えば扱う数値が金額(円)であれば21億4千7百万ウン円が最大値なので、セレブの場合はアプリがクラッシュする恐れがあります。

ですが、よくよく考えたら私が今担当しているアプリはiOS 11以降のiPhoneでしか使えません。

調べたところ、iOS 11以降では32bitの実行環境はないようです。

参考:iOS端末 画面サイズ・対応OS早見表(iOS7〜12)

ってことは、iOS 11以降のみサポートのアプリであれば、IntとInt64を使い分ける意味はないので、冒頭のような考慮は不要でした。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3