Menggunakan Pustaka Templat
Templat agak seperti makro. Seperti halnya makro, memanggil templat menyebabkannya diperluas (dengan penggantian parameter yang sesuai) ke kode yang telah Anda tulis. Namun, templat melaju lebih jauh dari ini untuk memungkinkan pembuatan kelas baru berdasarkan jenis yang Anda lewati sebagai parameter. Kelas baru ini menerapkan cara yang aman untuk melakukan operasi yang dinyatakan dalam kode templat Anda.
Pustaka templat seperti ATL berbeda dari pustaka kelas C++ tradisional karena biasanya hanya disediakan sebagai kode sumber (atau sebagai kode sumber dengan sedikit waktu proses pendukung) dan tidak secara inheren atau selalu hierarkis di alam. Daripada turun dari kelas untuk mendapatkan fungsionalitas yang Anda inginkan, Anda membuat instans kelas dari templat.