私は今までなんとなく、「値がデカくなる可能性がある整数にはInt64、そうでもない整数はInt」で変数宣言するように気を配ってきましたが、実行環境次第ではそんな考慮は不要、という話です。
本記事の前提環境:
・iOS 11以降
・Swift 5
冒頭のような考慮をしてきた背景としては、
Intの最大値・最小値は、『実行環境が32bitか64bitによって違う』という特性があって、32bitだと範囲が狭いためです。
型 | 最大値 | 最小値 |
---|---|---|
Int | 2147483647 9223372036854775807 |
-2147483648 -9223372036854775808 (実行環境が32bitか64bitによって違う) |
Int64 | 9223372036854775807 | -9223372036854775808 |
なので32bit環境のIntにおいては、例えば扱う数値が金額(円)であれば21億4千7百万ウン円が最大値なので、セレブの場合はアプリがクラッシュする恐れがあります。
ですが、よくよく考えたら私が今担当しているアプリはiOS 11以降のiPhoneでしか使えません。
調べたところ、iOS 11以降では32bitの実行環境はないようです。
参考:iOS端末 画面サイズ・対応OS早見表(iOS7〜12)
ってことは、iOS 11以降のみサポートのアプリであれば、IntとInt64を使い分ける意味はないので、冒頭のような考慮は不要でした。