কখনও কখনও আমাদের জানতে হয় যে, বর্তমান C++ স্ট্যান্ডার্ড কী। এই ধরনের ইনফরমেশন পেতে আমরা __cplusplus ম্যাক্রো ব্যবহার করতে পারি। ভিন্ন স্ট্যান্ডার্ডের জন্য এর ভ্যালু নিচের মতো হবে।
| স্ট্যান্ডার্ড | __cplusplus আউটপুট |
|---|---|
| C++ pre C++98 | 1 |
| C++98 | 199711L |
| C++98 + TR1 | এটি চেক করা যায় না, এটি C++98 হিসেবে মার্ক হবে |
| C++11 | 201103L |
| C++14 | 201402L |
| C++17 | 201703L |
উদাহরণ
#include <iostream>
int main() {
if (__cplusplus == 201703L)
std::cout << "C++17" << endl;
else if (__cplusplus == 201402L)
std::cout << "C++14" << endl;
else if (__cplusplus == 201103L)
std::cout << "C++11" << endl;
else if (__cplusplus == 199711L)
std::cout << "C++98" << endl;
else
std::cout << "pre-standard C++" << endl;
}
আউটপুট
C++98