Trong bài viết này, chúng ta sẽ thảo luận về cách làm việc, cú pháp và các ví dụ của mẫu std ::is_unsigned trong C ++ STL.
is_unsigned là một mẫu nằm trong tệp tiêu đề
Kiểu dữ liệu không dấu trong C ++ là gì?
Các kiểu dữ liệu chưa được đánh dấu là những kiểu mà chúng tôi sử dụng khi biết các giá trị sẽ không âm, như số cuộn, id của số ngẫu nhiên, v.v.
Để tạo một loại là không có dấu, chúng tôi sử dụng từ khóa không có dấu làm tiền tố của loại dữ liệu như -
int không dấu;
float không dấu;
Cú pháp
template <class T>is_unsigned;
Tham số
Mẫu chỉ có thể có tham số kiểu T và kiểm tra xem T có phải là kiểu không dấu hay không.
Giá trị trả về
Nó trả về giá trị Boolean, true nếu kiểu đã cho là kiểu không dấu và false nếu kiểu đã cho không phải là kiểu không dấu.
Ví dụ
Input: is_unsigned<unsigned int>::value; Output: True Input: is_unsigned<int>::value; Output: False
Ví dụ
#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_unsigned:"; cout << "\nint:" << is_unsigned<int>::value; cout << "\nTP:" << is_unsigned<TP>::value; cout << "\nTP_1:" << is_unsigned<TP_1>::value; cout << "\nTP_2:" << is_unsigned<TP_2>::value; return 0; }
Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -
checking for is_unsigned: Int: false TP: false TP_1: false TP_2: false
Ví dụ
#include <iostream> #include <type_traits> using namespace std; int main() { cout << boolalpha; cout << "checking for is_unsigned:"; cout << "\nfloat:" << is_unsigned<float>::value; cout << "\nSigned int:" << is_unsigned<signed int>::value; cout << "\nUnsigned int:" << is_unsigned<unsigned int>::value; cout << "\ndouble:" << is_unsigned<double>::value; return 0; }
Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -
checking for is_signed: Float: false Signed int: false Unsigned int: true Double: false