다음과 같은 최소한의 전체 생각해 내가 https://gcc.gnu.org/projects/cxx-status.html에 관련된 무언가를 찾기 위해 노력했다GCC에서 더 자세한 C++ 17 상태?</p> <pre><code>#include <numeric> int main() { std::transform_reduce(); } </code></pre> <p>GCC와 오류에 7.2 결과를 컴파일하는 시도 :
[[email protected] ~]$ g++ -std=c++17 omg.cpp
omg.cpp: In function ‘int main()’:
omg.cpp:4:7: error: ‘transform_reduce’ is not a member of ‘std’
std::transform_reduce();
^~~~~~~~~~~~~~~~
[[email protected] ~]$ g++ -v |& tail -1
gcc version 7.2.0 (GCC)
을하지만 대부분 언어 기능을 설명하고 나는 새로운 STL 정의 지원에 대해 아무 것도 보지 못했다. (때로는 #if __has_include(<execution>)
을 확인하는 것과 같이 자동화 할 수 있지만, <numeric>
은 오래된 포함이고 특정 정의가 포함되어 있는지 확인하는 방법이 없다. 스크립팅 된 STL 헤더를 구문 분석하는 것 외에도 현재 초안에 설명 된 것이 이미 구현되었는지 여부에 대한 빠른 정보 소스가 있습니까? 다른 뭔가가있을거야?
https://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#status.iso.2017 – Justin
음, 외설 구현되지 않았습니다. –
해당 링크에서 "병렬 처리 TS를 표준화해야합니다"에서이 기능이 구현되지 않았 음을 알 수 있습니다. 'transform_reduce'는 [Parallelism TS에서] (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0024r2.html#transform.reduce) – Justin