Kelas is_same
Menguji apakah dua jenis sama.
Sintaks
template <class Ty1, class Ty2>
struct is_same;
Parameter
Ty1
Jenis pertama yang akan dikueri.
Ty2
Jenis kedua yang akan dikueri.
Keterangan
Instans predikat jenis memegang true jika jenis Ty1 dan Ty2 adalah jenis yang sama, jika tidak, itu menyimpan false.
Contoh
// std__type_traits__is_same.cpp
// compile with: /EHsc
#include <type_traits>
#include <iostream>
struct base
{
int val;
};
struct derived
: public base
{
};
int main()
{
std::cout << "is_same<base, base> == " << std::boolalpha
<< std::is_same<base, base>::value << std::endl;
std::cout << "is_same<base, derived> == " << std::boolalpha
<< std::is_same<base, derived>::value << std::endl;
std::cout << "is_same<derived, base> == " << std::boolalpha
<< std::is_same<derived, base>::value << std::endl;
std::cout << "is_same<int, int> == " << std::boolalpha
<< std::is_same<int, int>::value << std::endl;
std::cout << "is_same<int, const int> == " << std::boolalpha
<< std::is_same<int, const int>::value << std::endl;
return (0);
}
is_same<base, base> == true
is_same<base, derived> == false
is_same<derived, base> == false
is_same<int, int> == true
is_same<int, const int> == false
Persyaratan
Header:<type_traits>
Namespace: std