物理の駅 by onsanai

Physics Station → PhSt 質問・疑問・間違いの指摘は、コメントに書くか、直接伝えるときっと良いことがあります。主にWindows or Ubuntu用の記事です

boost 1.65.0 と C++17 でエラー

1>x:\boost_1_65_0\boost\operators.hpp(839): error C4996: 
'std::iterator<std::output_iterator_tag,void,void,void,void>': 
warning STL4015: 
The std::iterator class template (used as a base class to provide typedefs) is deprecated in C++17. 
(The <iterator> header is NOT deprecated.) 
The C++ Standard has never required user-defined iterators to derive from std::iterator. 
To fix this warning, stop deriving from std::iterator and start providing publicly accessible typedefs named iterator_category, value_type, difference_type, pointer, and reference. 
Note that value_type is required to be non-const, even for constant iterators. 
You can define _SILENCE_CXX17_ITERATOR_BASE_CLASS_DEPRECATION_WARNING or _SILENCE_ALL_CXX17_DEPRECATION_WARNINGS to acknowledge that you have received this warning.