C++ åèæå
- C++11
- C++14
- C++17
- C++20
- C++ ç¼è¯å¨æ¯ææ åµè¡¨
- ç¬ç«ä¸å®¿ä¸»å®ç°
- C++ è¯è¨
- C++ å ³é®è¯
- é¢å¤çå¨
- C++ æ ååºå¤´æä»¶
- å ·åè¦æ±
- åè½ç¹æ§æµè¯ (C++20)
- å·¥å ·åº
- ç±»åæ¯æï¼åºæ¬ç±»åãRTTIãç±»åç¹æ§ï¼
- æ¦å¿µåº (C++20)
- é误å¤ç
- 卿å å管ç
- æ¥æåæ¶é´å·¥å ·
- å符串åº
- 容å¨åº
- è¿ä»£å¨åº
- èå´åº (C++20)
- ç®æ³åº
- æ°å¼åº
- å¸¸ç¨æ°å¦å½æ°
- æ°å¦ç¹æ®å½æ°
- ä¼ªéæºæ°çæ
- æµ®ç¹ç¯å¢
- std::complex
- std::valarray
- std::valarray<T>::valarray
- std::valarray<T>::~valarray
- std::valarray<T>::operator=
- std::valarray<T>::operator[]
- std::valarray<T>::swap
- std::valarray<T>::size
- std::valarray<T>::resize
- std::valarray<T>::sum
- std::valarray<T>::min
- std::valarray<T>::max
- std::valarray<T>::shift
- std::valarray<T>::cshift
- std::valarray<T>::apply
- std::valarray<T>::operator+,-,~,!
- std::valarray<T>::operator+=,-=,*=,/=,%=,&=,|=,<<=,>>=
- std::swap(std::valarray)
- std::begin(std::valarray)
- std::end(std::valarray)
- std::abs(std::valarray)
- std::exp(std::valarray)
- std::log(std::valarray)
- std::log10(std::valarray)
- std::pow(std::valarray)
- std::sqrt(std::valarray)
- std::sin(std::valarray)
- std::cos(std::valarray)
- std::tan(std::valarray)
- std::asin(std::valarray)
- std::acos(std::valarray)
- std::atan(std::valarray)
- std::atan2(std::valarray)
- std::sinh(std::valarray)
- std::cosh(std::valarray)
- std::tanh(std::valarray)
- operator+,-,*,/,%,&,|,^,<<,>>,&&,|| (std::valarray)
- operator==,!=,<,<=,>,>=(std::valarray)
- std::slice_array
- std::gslice_array
- std::indirect_array
- std::slice
- std::gslice
- std::mask_array
- std::valarray çæ¨å¯¼æå¼
- std::midpoint
- std::lerp
- std::has_single_bit
- std::bit_ceil
- std::bit_floor
- std::bit_width
- std::rotl
- ç¼è¯æ¶æçæ°ç®æ¯
- std::gcd
- std::lcm
- æ°å¦å¸¸æ°
- std::bit_cast
- std::rotr
- std::countl_zero
- std::countl_one
- std::countr_zero
- std::countr_one
- std::popcount
- 注é
- è¾å ¥/è¾åºåº
- æä»¶ç³»ç»åº
- æ¬å°ååº
- æ£å表达å¼åº
- ååæä½åº
- çº¿ç¨æ¯æåº
- å®éªæ§ C++ ç¹æ§
- æç¨çèµæº
- ç´¢å¼
- std 符å·ç´¢å¼
- åç¨æ¯æ (C++20)
- C++ å ³é®è¯
ä½ç½®ï¼é¦é¡µ > C++ åèæå >æ°å¼åº > std::valarray
std::valarray
| å®ä¹äºå¤´æä»¶ <valarray>
|
||
| template< class T > class valarray; |
||
std::valarray æ¯è¡¨ç¤ºå¹¶æä½å¼æ°ç»çç±»ã宿¯æéå ç´ æ°å¦è¿ç®ä¸å¤ç§å½¢å¼ç广ä¹ä¸æ è¿ç®ç¬¦ãåçåé´æ¥è®¿é®ã
注æ
std::valarray å帮å©ç±»å®ä¹ä¸ºå
餿äºå½¢å¼çå«å使ç¨ï¼ä»èå
许è¿äºç±»ä¸çæä½è¢«ä¼åå¾ç±»ä¼¼ C ç¨åºè¯è¨ä¸å
³é®è¯ restrict çææãèä¸ï¼æ¥æ¶ valarray åæ°ç彿°åè¿ç®ç¬¦å
许è¿å代ç对象ï¼ä»¥ä½¿å¾ç¼è¯å¨å°è¯¸å¦ v1 = a*v2 + v3; ç表达å¼ä¼åææ§è¡ v1[i] = a*v2[i] + v3[i]; çå个循ç¯ï¼é¿å
ä»»ä½ä¸´æ¶éæå¤è¶è¿ç®ãç¶èï¼è¡¨è¾¾å¼æ¨¡æ¿ä½¿å¾åæ ·çä¼åæå·§å¯¹ä»»ä½ C++ 容å¨å¯ç¨ï¼èæ°å¼åºç主æµå çµæ´»æ§åå¥½è¡¨è¾¾å¼æ¨¡æ¿çäº valarray ãæäº C++ æ ååºå®ç°ä½¿ç¨è¡¨è¾¾å¼æ¨¡æ¿ä»¥å®ç° std::valarray ä¸ç髿è¿ç®ï¼ä¾å¦ GNU libstdc++ ä¸ LLVM libc++ ï¼ãåªæå°æ°åºè¿ä¸æ¥ä¼å valarray ï¼ä¾å¦ Intel Integrated Performance Primitives ã
模æ¿å½¢å
| T | - | å ç´ çç±»åãç±»åå¿ é¡»æ»¡è¶³æ°å¼ç±»å (NumericType) è¦æ± |
æåç±»å
| Â | |
| æåç±»å | å®ä¹ |
value_type
|
T
|
æå彿°
| æé æ°çæ°å¼æ°ç» (å ¬å¼æå彿°) | |
| æææ°å¼æ°ç» (å ¬å¼æå彿°) | |
| 为å
容èµå¼ (å ¬å¼æå彿°) | |
| è·å/设置 valarray æ°ç»å
ç´ ãåçææ©ç (å ¬å¼æå彿°) | |
| 对 valarray çæ¯ä¸ªå
ç´ è¿ç¨ä¸å
ç®æ¯è¿ç®ç¬¦ (å ¬å¼æå彿°) | |
| åºç¨å¤åèµå¼è¿ç®ç¬¦å° valarray çæ¯ä¸ªå
ç´ (å ¬å¼æå彿°) | |
| ä¸å¦ä¸ valarray äº¤æ¢ (å ¬å¼æå彿°) | |
| è¿åvalarrayçå¤§å° (å ¬å¼æå彿°) | |
| æ´æ¹ valarray çå¤§å° (å ¬å¼æå彿°) | |
| è®¡ç®ææå
ç´ çå (å ¬å¼æå彿°) | |
| è¿åæå°å
ç´ (å ¬å¼æå彿°) | |
| è¿åæå¤§çå
ç´ (å ¬å¼æå彿°) | |
| 以填å
¥é¶çæ¹å¼ç§»å¨ valarray çå
ç´ (å ¬å¼æå彿°) | |
| 循ç¯ç§»å¨ valarray çå
ç´ (å ¬å¼æå彿°) | |
| å°å½æ°åºç¨å° valarray çæ¯ä¸ªå
ç´ (å ¬å¼æå彿°) |
éæå彿°
| (C++11) |
ç¹å std::swap() ç®æ³ (彿°æ¨¡æ¿) |
| (C++11) |
ç¹åç std::begin (彿°æ¨¡æ¿) |
| (C++11) |
ç¹åç std::end (彿°æ¨¡æ¿) |
| 对两个 valarray çæ¯ä¸ªå
ç´ ï¼æä¸ä¸ª valarray çæ¯ä¸ªå
ç´ åä¸ä¸ªå¼è¿ç¨äºå
è¿ç®ç¬¦ (彿°æ¨¡æ¿) | |
| æ¯è¾ä¸¤ä¸ª valarraysï¼ææ¯è¾ä¸ä¸ª valarray åä¸ä¸ªå¼ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::abs å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
ææ°å½æ° | |
| åºç¨å½æ° std::exp å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::log å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::log10 å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
å¹å½æ° | |
| åºç¨å½æ° std::pow å°äºä¸ª valarray æä¸ä¸ª valarray ä¸ä¸ä¸ªå¼ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::sqrt å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
ä¸è§å½æ° | |
| åºç¨å½æ° std::sin å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::cos å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::tan å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::asin å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::acos å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::atan å° valarray çæ¯ä¸ªå
ç´ (彿°æ¨¡æ¿) | |
| åºç¨å½æ° std::atan2 å°ä¸ä¸ª valarray åä¸ä¸ªå¼ (彿°æ¨¡æ¿) | |
忲彿° | |
| å¨ valarray çæ¯ä¸ªå
ç´ ä¸è°ç¨ std::sinh 彿° (彿°æ¨¡æ¿) | |
| å¨ valarray çæ¯ä¸ªå
ç´ ä¸è°ç¨ std::cosh 彿° (彿°æ¨¡æ¿) | |
| å¨ valarray çæ¯ä¸ªå
ç´ ä¸è°ç¨ std::tanh 彿° (彿°æ¨¡æ¿) | |
è¾ å©ç±»
| valarray ç BLAS å¼åçï¼èµ·å§ä¸æ ãé¿åº¦ã跨度 (ç±») | |
| å° valarray åºç¨ slice åçåéç代ç (类模æ¿) | |
| valarray çéç¨åçï¼èµ·å§ä¸æ ãé¿åº¦éãæ¥å¹
é (ç±») | |
| valarray åºç¨ gslice åçåéç代ç (类模æ¿) | |
å°åºç¨å¸å°æ©ç operator[] åç valarray åéç代ç (类模æ¿) | |
å°åºç¨é´æ¥ operator[] åç valarray åéç代çã (类模æ¿) |