Mega Code Archive

 
Categories / C++ / Valarray
 

Remove all elements in a valarray

/* The following code example is taken from the book  * "The C++ Standard Library - A Tutorial and Reference"  * by Nicolai M. Josuttis, Addison-Wesley, 1999  *  * (C) Copyright Nicolai M. Josuttis 1999.  * Permission to copy, use, modify, sell and distribute this software  * is granted provided this copyright notice appears in all copies.  * This software is provided "as is" without express or implied  * warranty, and with no claim as to its suitability for any purpose.  */ #include <iostream> #include <valarray> using namespace std; // print valarray template <class T> void printValarray (const valarray<T>& va) {     for (int i=0; i<va.size(); i++) {         cout << va[i] << ' ';     }     cout << endl; } int main() {     // define two valarrays with ten elements     valarray<double> va1(10), va2(10);     // assign values 0.0, 1.1, up to 9.9 to the first valarray     for (int i=0; i<10; i++) {         va1[i] = i * 1.1;     }     // assign values of the first to the second valarray     va2 = va1;     // remove all elements of the first valarray     va1.resize(0);     // print both valarrays again     printValarray(va1);     printValarray(va2); } /*  0 1.1 2.2 3.3 4.4 5.5 6.6 7.7 8.8 9.9  */