型推論と明示的な型指定
Zigに推論させる方法と、自分で型注釈を付ける方法を学びます。
「型推論と明示的な型指定」はCoddyKit上の無料Zig Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはZig Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Zig Academyコースには全4レッスンが含まれています。
型を指定する2つの方法
値をバインドするとき、Zigに型を判断させることも、型を明示的に書くこともできます。どちらも、Zigの強力な静的typeシステムに基づいています。
値が明確なら推論に任せる
値から型が明らかな場合は、Zigにinferさせましょう。const name = "Ada"ならテキストだと明らかなので、注釈は必要ありません。
const name = "Ada";明示的に注釈する
自分で型を指定するには、名前の後にcolonと型を書きます。これにより、整数のビット幅を正確に指定できます。
const age: u8 = 30;整数型のデフォルト
推論された整数リテラルは、使用されるまでcomptime_intになります。値が格納先に入ると、Zigが必要な幅へ暗黙的に変換します。
const small = 7; // comptime_int注釈が必要な場合
値だけでは不十分なこともあります。0から始まるvarには、u8なのかi64なのかをZigが判断できるよう、明示的な型が必要です。
var counter: u32 = 0;浮動小数点数にも注意が必要
単独の3.14はcomptime_floatです。精度やメモリサイズが重要な場合は、注釈してf32またはf64を選びます。
const ratio: f32 = 3.14;推論は可読性を高める
文脈から型が明らかな場合は、型を省くことで行をcleanに保てます。実際に明確さが増す場合や必要な場合だけ注釈しましょう。
型に合わせて暗黙変換される
u16の格納先に5を代入すると、リテラルは問題なく収まります。可能な場合、Zigは安全に宣言された型へcoercionを行います。
const n: u16 = 5;境界では明示する
関数のシグネチャやデータ構造では、型が常にexplicitです。推論は局所的な利便性であり、宣言を省略する方法ではありません。
fn area(w: u32, h: u32) u32 {}予想外の変換はない
Zigが浮動小数点数を整数に黙って変換することはありません。型が一致しなければerrorになり、数値の動作を予測しやすく保てます。
シンプルな習慣
値から型が明らかな場合は推論に任せ、型が読み手に必要なinformationである場合は注釈しましょう。選択の基準は明確さです。
クイックチェック
var counter = 0;と書いたところ、Zigがエラーを報告しました。なぜ追加の情報を求められるのでしょうか。
まとめ
Zigは、明確な値から型をinferできること、またはcolonを使って型を注釈できることを学びました。どちらを使うかは、明確さと必要性に応じて決めましょう。🎯
AI チューターと学ぶ Zig — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 30
- レッスン
- 120
よくある質問
「型推論と明示的な型指定」レッスンは無料ですか?
はい。「型推論と明示的な型指定」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Zig Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Zig Academyコースには全4レッスンが含まれています。
「型推論と明示的な型指定」で何を学びますか?
Zigに推論させる方法と、自分で型注釈を付ける方法を学びます。 ブラウザで直接実行するハンズオンコードでZig Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Zig Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのZig Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「型推論と明示的な型指定」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このZig Academyレッスンでコードを書いて実行できますか?
はい。すべてのZig Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。