এই নিবন্ধে আমরা C++ STL-এ std::is_signed টেমপ্লেটের কাজ, বাক্য গঠন এবং উদাহরণ নিয়ে আলোচনা করব।
is_ signed হল একটি টেমপ্লেট যা
একটি স্বাক্ষরিত প্রকার কি?
এগুলি হল মৌলিক গাণিতিক প্রকার, যেগুলির সাথে চিহ্নের মান রয়েছে৷ সমস্ত গাণিতিক ডেটা প্রকার হয় স্বাক্ষরিত এবং স্বাক্ষরবিহীন।
যেমন আমরা নেতিবাচক মান দেখাতে চাই আমরা সাইনড টাইপ ব্যবহার করি।
যেমন:-1 স্বাক্ষরিত int এবং -1.009 স্বাক্ষরিত ফ্লোট৷
৷ডিফল্টরূপে সকল প্রকার সাইন ইন করা হয় যাতে সেগুলিকে আনসাইন করা হয় না।
সিনট্যাক্স
template <class T> is_signed;
পরামিতি
টেমপ্লেটে শুধুমাত্র T প্রকারের প্যারামিটার থাকতে পারে এবং T একটি স্বাক্ষরিত প্রকার কিনা তা পরীক্ষা করে দেখুন।
রিটার্ন মান
এটি একটি বুলিয়ান মান প্রদান করে, যদি প্রদত্ত প্রকারটি একটি স্বাক্ষরিত প্রকার হয় তবে সত্য এবং প্রদত্ত প্রকারটি একটি স্বাক্ষরিত প্রকার না হলে মিথ্যা৷
উদাহরণ
Input: is_signed<int>::value; Output: True Input: is_signed<unsigned int>::value; Output: False
উদাহরণ
#include <iostream> #include <type_traits> using namespace std; class TP { }; enum TP_1 : int {}; enum class TP_2 : int {}; int main() { cout << boolalpha; cout << "checking for is_signed:"; cout << "\nint:" << is_signed<int>::value; cout << "\nTP:" << is_signed<TP>::value; cout << "\nTP_1:" << is_signed<TP_1>::value; cout << "\nTP_2:" << is_signed<TP_2>::value; return 0; }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেchecking for is_signed: Int: true TP: false TP_1: false TP_2: falseচেক করা হচ্ছে
উদাহরণ
#include <iostream> #include <type_traits> using namespace std; int main() { cout << boolalpha; cout << "checking for is_signed:"; cout << "\nfloat:" << is_signed<float>::value; cout << "\nSigned int:" << is_signed<signed int>::value; cout << "\nUnsigned int:" << is_signed<unsigned int>::value; cout << "\ndouble:" << is_signed<double>::value; return 0; }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −
উৎপন্ন করবেchecking for is_signed: Float: true Signed int: true Unsigned int: false Double: trueপরীক্ষা করা হচ্ছে