Eigen :: array 란 무엇입니까 (Eigen :: Array 아님)

Sep 02 2020

고유 텐서 라이브러리를 사용하고 있으며 shuffle () 메서드가 개체 Eigen :: array <type, int> 입력으로 원하는 것으로 보입니다.

내 구현에서는 std :: list of int를 셔플하기 위해 전달해야합니다 (물론 런타임에만 두 번째 int 매개 변수 (순위)를 알고 있습니다!)

답변

3 dtell Sep 02 2020 at 01:17

얼마 전 Eigen의 Tensor 모듈은 C ++ 03과 호환되었습니다. 그것은 std::array사용할 수 없음을 의미합니다 . 이러한 이유로 Tensor 모듈 Eigen::array은 실제로 std::arrayC ++ 11을 사용할 수있는 경우에 대한 typedef 인 자체 클래스를 정의했습니다 .

파일 지원되지 않는 / 아이겐 / CXX11 / SRC / UTIL / EmulateArray.h이 아래로 비등 뭔가를 포함 (의사 코드)

#if C++11 not available
  // Define a custom std::array like Eigen::array class
#else
  template <typename T, std::size_t N> using array = std::array<T, N>;
#endif

Tensor 모듈은 C ++ 03 호환성을 떨어 뜨 렸으며이 코드의 일부는 제거 될 수 있습니다.