共用方式為


is_compound 類別

測試指定的類型是否不是基本。

語法

template <class Ty>
struct is_compound;

參數

Ty
要查詢的類型。

備註

如果 Ty 的類型是基本類型,則類型述詞的實例會保留 false (也就是說,如果is_fundamental<Ty> 保留 true),否則為 true 因此,如果 Ty 是數位類型、函式類型、物件或函式的指標void、參考、類別、等位、列舉或非靜態類別成員的指標,或是其中一個成員的 cv 限定形式,則述詞會保留true

範例

// std__type_traits__is_compound.cpp
// compile with: /EHsc
#include <type_traits>
#include <iostream>

struct trivial
    {
    int val;
    };

int main()
    {
    std::cout << "is_compound<trivial> == " << std::boolalpha
        << std::is_compound<trivial>::value << std::endl;
    std::cout << "is_compound<int[]> == " << std::boolalpha
        << std::is_compound<int[]>::value << std::endl;
    std::cout << "is_compound<int()> == " << std::boolalpha
        << std::is_compound<int()>::value << std::endl;
    std::cout << "is_compound<int&> == " << std::boolalpha
        << std::is_compound<int&>::value << std::endl;
    std::cout << "is_compound<void *> == " << std::boolalpha
        << std::is_compound<void *>::value << std::endl;
    std::cout << "is_compound<int> == " << std::boolalpha
        << std::is_compound<int>::value << std::endl;

    return (0);
    }
is_compound<trivial> == true
is_compound<int[]> == true
is_compound<int()> == true
is_compound<int&> == true
is_compound<void *> == true
is_compound<int> == false

需求

標頭:<type_traits>

命名空間:std

另請參閱

<type_traits>
is_class 類別