এখানে আমরা C++ এ __FUNCTION__, __func__ এবং __PRETTY_FUNCTION__ এর মধ্যে পার্থক্যগুলি দেখতে পাব।
মূলত __FUNCTION__ এবং __func__ একই। C এবং C++ এর কিছু পুরানো সংস্করণ __func__ সমর্থন করে। বর্তমান ফাংশনের নাম পেতে এই ম্যাক্রো ব্যবহার করা হয়। _PRETTY_FUNCTION__ ফাংশন সম্পর্কে বিশদ বিবরণ দিতে ব্যবহৃত হয়। এটি ব্যবহার করে আমরা জানতে পারি কোন ফাংশনটি ব্যবহার করা হয়েছে এবং এটি কোন শ্রেণির অন্তর্ভুক্ত ইত্যাদি।
উদাহরণ
#include<iostream> using namespace std; class MyClass{ public: void Class_Function(){ cout << "The result of __PRETTY_FUNCTION__: " << __PRETTY_FUNCTION__ << endl; } }; void TestFunction(){ cout << "Output of __func__ is: " << __func__ << endl; } main() { cout << "Output of __FUNCTION__ is: " << __FUNCTION__ << endl; TestFunction(); MyClass myObj; myObj.Class_Function(); }
আউটপুট
Output of __FUNCTION__ is: main Output of __func__ is: TestFunction The result of __PRETTY_FUNCTION__: void MyClass::Class_Function()