Gerhard Wolf wrote:
> Hi,
>
> i have to vectors.
> std::vector<double> a;
> std::vector<double> b;
> same type, size and have synchronous value pairs. The values in "a"
> are decimal time values (linear increasing).
>
> Now i want to copy in a 3rd vector "c" all elements from a start value
> to a end value. My first idea was something like:
>
> std::vector<double> c; // target
> for (std::vector<double>::iterator it=a.begin(); it != a.end(); it++)
> { if (*it > startvalue && *it < endvalue) {
> c.push_back(?);
> }
> }
>
> do i need a 2nd iterator for vector b !? but how?
> or ist there a easier was to get the values to vector c?
It is hard to understand what, exactly, you want vector c to end up
containing.
For example, say vector a is:
1.0, 1.5, 2.0, 2.5
and vector b is:
12.0, 12.25, 12.5, 12.75
What do you want vector c to contain?
In this case it would probably be better to use an index.
for ( std::size_t i = 0; i < a.size() && i < b.size(); ++i )
{
// Here you can reference a[i] and b[i] or a.at(i) b.at(i)
}
--
Jim Langston
tazmaster@[EMAIL PROTECTED]


|