📄 valarray
字号:
for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] >> __y[__i]; return __tmp;}// Binary arithmetic operations between an array and a scalar.template <class _Tp> inline valarray<_Tp> operator*(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] * __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator*(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c * __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator/(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] / __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator/(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c / __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator%(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] % __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator%(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c % __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator+(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] + __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator+(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c + __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator-(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] - __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator-(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c - __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator^(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] ^ __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator^(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c ^ __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator&(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] & __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator&(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c & __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator|(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] | __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator|(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c | __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator<<(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] << __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator<<(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c << __x[__i]; return __tmp;}template <class _Tp> inline valarray<_Tp> operator>>(const valarray<_Tp>& __x, const _Tp& __c) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] >> __c; return __tmp;}template <class _Tp> inline valarray<_Tp> operator>>(const _Tp& __c, const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c >> __x[__i]; return __tmp;}// Binary logical operations between two arrays. Behavior is undefined// if the two arrays have different lengths. Note that operator== does// not do what you might at first expect.template <class _Tp> inline valarray<bool> operator==(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] == __y[__i]; return __tmp; }template <class _Tp> inline valarray<bool> operator<(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] < __y[__i]; return __tmp; }#ifdef __STL_FUNCTION_TMPL_PARTIAL_ORDERtemplate <class _Tp> inline valarray<bool> operator!=(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] != __y[__i]; return __tmp; }template <class _Tp> inline valarray<bool> operator>(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] > __y[__i]; return __tmp; }template <class _Tp> inline valarray<bool> operator<=(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] <= __y[__i]; return __tmp; }template <class _Tp> inline valarray<bool> operator>=(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] >= __y[__i]; return __tmp; }#endif /* __STL_FUNCTION_TMPL_PARTIAL_ORDER */template <class _Tp> inline valarray<bool> operator&&(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] && __y[__i]; return __tmp; }template <class _Tp> inline valarray<bool> operator||(const valarray<_Tp>& __x, const valarray<_Tp>& __y){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] || __y[__i]; return __tmp; }// Logical operations between an array and a scalar.template <class _Tp>inline valarray<bool> operator==(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] == __c; return __tmp; }template <class _Tp>inline valarray<bool> operator==(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c == __x[__i]; return __tmp; }template <class _Tp>inline valarray<bool> operator!=(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] != __c; return __tmp; }template <class _Tp>inline valarray<bool> operator!=(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c != __x[__i]; return __tmp; }template <class _Tp>inline valarray<bool> operator<(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] < __c; return __tmp; }template <class _Tp>inline valarray<bool> operator<(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c < __x[__i]; return __tmp; }template <class _Tp>inline valarray<bool> operator>(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] > __c; return __tmp; }template <class _Tp>inline valarray<bool> operator>(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c > __x[__i]; return __tmp; }template <class _Tp>inline valarray<bool> operator<=(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] <= __c; return __tmp; }template <class _Tp>inline valarray<bool> operator<=(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c <= __x[__i]; return __tmp; }template <class _Tp>inline valarray<bool> operator>=(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] >= __c; return __tmp; }template <class _Tp>inline valarray<bool> operator>=(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c >= __x[__i]; return __tmp; }template <class _Tp>inline valarray<bool> operator&&(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] && __c; return __tmp; }template <class _Tp>inline valarray<bool> operator&&(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c && __x[__i]; return __tmp; }template <class _Tp>inline valarray<bool> operator||(const valarray<_Tp>& __x, const _Tp& __c){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __x[__i] || __c; return __tmp; }template <class _Tp>inline valarray<bool> operator||(const _Tp& __c, const valarray<_Tp>& __x){ valarray<bool> __tmp(__x.size(), valarray<bool>::_NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = __c || __x[__i]; return __tmp; }// valarray "transcendentals" (the list includes abs and sqrt, which,// of course, are not transcendental).template <class _Tp>inline valarray<_Tp> abs(const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = abs(__x[__i]); return __tmp;}template <class _Tp>inline valarray<_Tp> acos(const valarray<_Tp>& __x) { typedef typename valarray<_Tp>::_NoInit _NoInit; valarray<_Tp> __tmp(__x.size(), _NoInit()); for (size_t __i = 0; __i < __x.size(); ++__i) __tmp[__i] = acos(__x[__i]); return __tmp;}template <class _Tp>inline valarray<_Tp> asin(const valarray<_Tp>& __x) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -