Suy diễn kiểu (type inference/deduction) là việc tự động phát hiện kiểu dữ liệu của một biểu thức trong ngôn ngữ lập trình. Đây là tính năng có trong một số ngôn ngữ kiểu tĩnh mạnh. Trong C++, từ khóa auto (thêm từ C++11) dùng để suy diễn kiểu tự động. Ví dụ, muốn tạo iterator để duyệt vector, có thể dùng auto cho mục đích này.
Ví dụ
#include<iostream> #include<vector> using namespace std; int main() { vector<int> arr(10); for(auto it = arr.begin(); it != arr.end(); it ++) { cin >> *it; } return 0; }Kết quả
Trong chương trình trên, it sẽ tự động lấy kiểu std::vector<int>::iterator.