টাইপ ইনফারেন্স (Type Inference) বা ডিডাকশন (deduction) বলতে একটি প্রোগ্রামিং ল্যাঙ্গুয়েজে একটি এক্সপ্রেশনের ডেটা টাইপ অটোমেটিক্যালি ডিটেক্ট করার প্রক্রিয়াকে বোঝায়। এটি কিছু শক্তিশালী স্ট্যাটিক্যালি টাইপড ল্যাঙ্গুয়েজে একটি ফিচার। C++-এ auto কীওয়ার্ড (C++11-এ যোগ করা হয়েছে) অটোমেটিক টাইপ ডিডাকশনের জন্য ব্যবহৃত হয়। উদাহরণস্বরূপ, আপনি একটি ভেক্টর (vector) এর ওপর ইটারেট করার জন্য একটি ইটারেটর তৈরি করতে চান, আপনি সেটি সহজে auto দিয়ে করতে পারেন।
উদাহরণ
#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;
}
উপরের প্রোগ্রামে, it অটোমেটিক্যালি std::vector<int>::iterator টাইপ পাবে।