自動型推論
メニューを表示するにはスワイプしてください
C++は静的型付け言語ですが、autoを使用することで、初期化時にコンパイラが変数の型を自動的に推論できます。この機能はC++11で導入され、以前のバージョンでは利用できません。
main.cpp
12345678910#include <iostream> int main() { auto num = 9; auto str = "I am string"; std::cout << num << std::endl; std::cout << str << std::endl; }
この機能は記述の手間を省き、コードを簡潔にできますが、意図した型が分かりにくくなり、エラーの発見が難しくなる場合もあります。
main.cpp
1234567891011#include <iostream> int main() { auto num1 = 9; auto num2 = 12; auto num3 = 15000; auto calculations = num1 / num2 * num3; std::cout << calculations; }
型を指定することで、コードの理解が深まり、不具合の発見が容易になる。
main.cpp
1234567891011#include <iostream> int main() { float num1 = 9; float num2 = 12; float num3 = 15000; float calculations = num1 / num2 * num3; std::cout << calculations; }
注意
正しい結果を出力するには、num1、num2、またはnum3のいずれかをfloat型にする必要があります。
それにもかかわらず、autoは範囲ベースのforループで広く使用されており、配列や他のコンテナを反復処理するための汎用的な方法です。arrを反復処理するには、次の構文を使用します。
main.cpp
auto.h
123456789#include <iostream> int main() { int num_arr[5] = {1, 5, 10, 15, 20}; for (auto num : num_arr) std::cout << num << " "; }
型が長くなる場合でも、文脈から明確で誤った結果につながらない場合に使用可能。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 4. 章 4
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 4. 章 4