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.