Déduction Automatique de Type
Glissez pour afficher le menu
Bien que C++ soit un langage à typage statique, il est possible d'utiliser auto pour permettre au compilateur de déduire le type d'une variable lors de son initialisation. Cette fonctionnalité a été introduite dans C++11 et n'est pas disponible dans les versions antérieures.
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; }
Bien que cela puisse faire gagner du temps et rendre le code plus concis, cela peut également masquer le type prévu, rendant les erreurs plus difficiles à détecter.
main.cpp
1234567891011#include <iostream> int main() { auto num1 = 9; auto num2 = 12; auto num3 = 15000; auto calculations = num1 / num2 * num3; std::cout << calculations; }
La spécification des types facilite la compréhension du code et l’identification des erreurs :
main.cpp
1234567891011#include <iostream> int main() { float num1 = 9; float num2 = 12; float num3 = 15000; float calculations = num1 / num2 * num3; std::cout << calculations; }
L'un des éléments num1, num2 ou num3 doit être de type float pour obtenir le résultat correct.
Néanmoins, auto est largement utilisé dans les boucles for basées sur les plages, car il s'agit d'une méthode polyvalente pour itérer sur des tableaux et d'autres conteneurs. Utiliser simplement la syntaxe suivante pour itérer sur 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 << " "; }
Il peut également être utilisé lorsque le type est long à écrire mais reste évident dans le contexte et ne peut pas entraîner de résultats incorrects.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion