Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::tuple_size<std::complex>

      From cppreference.com
      <cpp‎ |numeric‎ |complex
       
       
       
       
      Defined in header<complex>
      template<class T>

      struct tuple_size<std::complex<T>>

         :std::integral_constant<std::size_t,2>{};
      (since C++26)

      The partial specialization ofstd::tuple_size forstd::complex provides a compile-time way to obtain the number of components of acomplex, which is always2, using tuple-like syntax. It is provided for structured binding support.

      Contents

      Inherited fromstd::integral_constant

      Member constants

      value
      [static]
      the constant value 2
      (public static member constant)

      Member functions

      operator std::size_t
      converts the object tostd::size_t, returnsvalue
      (public member function)
      operator()
      (C++14)
      returnsvalue
      (public member function)

      Member types

      Type Definition
      value_typestd::size_t
      typestd::integral_constant<std::size_t, value>

      [edit]Notes

      Feature-test macroValueStdFeature
      __cpp_lib_tuple_like202311L(C++26)Add tuple protocol tostd::complex

      [edit]Example

      Run this code
      #include <complex> static_assert(std::tuple_size_v<std::complex<float>>==2); static_assert([]{usingnamespace std::literals;auto[re, im]=-1.5+ 2.5i;return re==-1.5&& im==2.5;}()); static_assert([]{usingnamespace std::literals;auto z=std::complex<double>{};auto&[re, im]= z;    re=1.0;    im=2.0;return z==1.0+ 2.0i;}()); int main(){}

      [edit]See also

      Structured binding(C++17) binds the specified names to sub-objects or tuple elements of the initializer[edit]
      (C++11)
      obtains the number of elements of a tuple-like type
      (class template)[edit]
      obtains the underlying real and imaginary number type of astd::complex
      (class template specialization)[edit]
      obtains a reference to real or imaginary part from astd::complex
      (function template)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/numeric/complex/tuple_size&oldid=174094"

      [8]ページ先頭

      ©2009-2025 Movatter.jp