- //
- // CopyRight(c) 2009, YOYO, All Rights Reserved.
- // Author: LIN YiQian
- // Created: 2009/08/24
- // Describe: STL valarray 使用DEMO
- //
- #include <iostream>
- #include <valarray>
- using namespace std;
- typedef valarray<double> DOUBLE_VAR;
- const int VALARRAY_SIZE = 3;
- void PrintArray(DOUBLE_VAR varDouble)
- {
- for (int i = 0; i < varDouble.size(); ++i)
- {
- cout << varDouble[i] << " ";
- }
- cout << endl;
- }
- void main(void)
- {
- DOUBLE_VAR varDouble(VALARRAY_SIZE);
- // assign
- for (int i = 1; i < 4; ++i)
- {
- varDouble[i-1] = i*i;
- }
- // size
- {
- cout << "ValArray size: " << varDouble.size() << endl;
- }
- // print array
- {
- cout << "ValArray: "; PrintArray(varDouble);
- }
- DOUBLE_VAR varIntSqrt(VALARRAY_SIZE);
- varIntSqrt = sqrt(varDouble);
- // print sqrt array
- {
- cout << "Sqrt ValArray: "; PrintArray(varIntSqrt);
- }
- DOUBLE_VAR varIntPow(VALARRAY_SIZE);
- varIntPow = pow(varDouble, 2.0);
- // print pow array
- {
- cout << "Pow ValArray: "; PrintArray(varIntPow);
- }
- // sum, max & min
- {
- cout << "Sum: " << varIntPow.sum() << endl;
- cout << "Max: " << varIntPow.max() << endl;
- cout << "Min: " << varIntPow.min() << endl;
- }
- system("pause");
- }