Hello Guys, I am developing some applications that extensively uses STL. I plan to use the traits -> iterator_traits to get information about which type do I need to return. Unfortunately, I've been experienced some problems to use such functionality.
This simple test code was extracted from the SGI-STL website, but oddly enough it doesn't compile: #include #include #include #include template std::iterator_traits::value_type last_value(InputIterator first, InputIterator last) { std::iterator_traits::value_type result = *first; for (++first; first != last; ++first) result = *first; return result; } using namespace std; int main() { std::vector teste(10); fill_n(teste.begin(),10,1.2); double result = last_value(teste.begin(),teste.end()); return 0; } The error response is: argdeduction.cpp:8: error: expected constructor, destructor, or type conversion before ‘last_value’ argdeduction.cpp: In function ‘int main()’: argdeduction.cpp:21: error: ‘last_value’ was not declared in this scope Hopefully, Trincheira -- View this message in context: http://www.nabble.com/GCC-FAIL-WITH-BASIC-STL-EXAMPLE-t1539517.html#a4182425 Sent from the gcc - Dev forum at Nabble.com.