亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? entry.h

?? Matrix_Template_Library.rar c++矩陣模塊庫函數(shù)
?? H
字號:
// -*- c++ -*-//// Copyright 1997, 1998, 1999 University of Notre Dame.// Authors: Andrew Lumsdaine, Jeremy G. Siek, Lie-Quan Lee//// This file is part of the Matrix Template Library//// You should have received a copy of the License Agreement for the// Matrix Template Library along with the software;  see the// file LICENSE.  If not, contact Office of Research, University of Notre// Dame, Notre Dame, IN  46556.//// Permission to modify the code and to distribute modified code is// granted, provided the text of this NOTICE is retained, a notice that// the code was modified is included with the above COPYRIGHT NOTICE and// with the COPYRIGHT NOTICE in the LICENSE file, and that the LICENSE// file is distributed with the modified code.//// LICENSOR MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED.// By way of example, but not limitation, Licensor MAKES NO// REPRESENTATIONS OR WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY// PARTICULAR PURPOSE OR THAT THE USE OF THE LICENSED SOFTWARE COMPONENTS// OR DOCUMENTATION WILL NOT INFRINGE ANY PATENTS, COPYRIGHTS, TRADEMARKS// OR OTHER RIGHTS.////#ifndef ENTRY_H#define ENTRY_H#include <iosfwd>#include "mtl/mtl_config.h"namespace mtl {  //:  // Definintion for entries in sparse matrices  //  // There is one index stored with the element.  //!category: utilities  //!component: typetemplate <class T>struct entry1 {  /* This is kind of bad because it gets padded     out to 16 bytes, which wastes space/bandwidth     */  typedef entry1<T> self;  typedef T value_type;  int index;  mutable value_type value;  inline entry1() : index(-1) { }  inline entry1(int i, value_type v = value_type()) : index(i), value(v) { }  inline entry1(const self& x) : index(x.index), value(x.value) { }  inline self& operator=(const self& x) {    index = x.index;    value = x.value;    return *this;  }  inline bool operator < (const entry1& e) const {    return index < e.index; }  inline bool operator == (const entry1& e) const {    return index == e.index; }  inline bool operator != (const entry1& e) const {    return index != e.index; }};template <class T>std::ostream& operator<<(std::ostream& os, const entry1<T>& e){  os << "(" << e.index << "," << e.value << ") ";  return os;}//: blah//!noindex:template <class OneD>class elt_ref {  typedef elt_ref self;public:  typedef typename OneD::value_type value_type;  inline elt_ref() : vec(OneD()), i(-1) { }  inline elt_ref(OneD& m, int i_)     : vec(m), i(i_) {      iter = vec.find(i);      if (iter != vec.end()) {        if (iter.index() == i)          val = *iter;        else          val = value_type();      } else        val = value_type();  }  inline operator value_type() const {    return val;  }  inline value_type operator=(value_type v) {    if (iter != vec.end() && iter.index() == i) {      *iter = val = v;    } else {      val = v;      iter = vec.insert(iter, i, v);    }    return val;  }  inline value_type operator+=(value_type v) {    if (iter != vec.end() && iter.index() == i) {      *iter = val += v;    } else {      val = v;      iter = vec.insert(iter, i, v);    }    return val;  }  inline value_type operator*=(value_type v) {    if (iter != vec.end() && iter.index() == i)      *iter = val *= v;    return val;  }  inline value_type operator/=(const self& v) {    if (iter != vec.end() && iter.index() == i)      *iter = val /= v.val;    return val;  }  inline value_type operator/=(value_type v) {    if (iter != vec.end() && iter.index() == i)      *iter = val /= val;    return val;  }  inline value_type operator-=(value_type v) {    if (iter != vec.end() && iter.index() == i)      *iter = val -= v;    else {      val = -v;      iter = vec.insert(iter, i, val);    }    return val;  }  inline value_type operator=(const self& a) {    if (iter != vec.end() && iter.index() == i)       *iter = val = a.val;    else      iter = vec.insert(iter, i, a.val);    return val;  }  /*protected: */  OneD vec;  /* JGS, value_typeobably performance issue here, want    OneD& vec;   but vec may be temporary object in the 2D, like comvalue_typeessed2D   */  typename OneD::iterator iter;  int i;  value_type val;};//: blah//!noindex:template <class OneD>class const_elt_ref {  typedef const_elt_ref self;public:  typedef typename OneD::value_type value_type;  /*  inline const_elt_ref() : vec(0), i(0) { }*/  template <class EltRef>  inline const_elt_ref(const EltRef& elt) {    typename OneD::const_iterator iter = elt.vec.find(elt.i);    if (iter != elt.vec.end()) {      if (iter.index() == elt.i)        val = *iter;      else        val = value_type();    } else      val = value_type();  }  inline const_elt_ref(const OneD& vec, int i) {    typename OneD::const_iterator iter = vec.find(i);    if (iter != vec.end()) {      if (iter.index() == i)        val = *iter;      else        val = value_type();    } else      val = value_type();  }  inline operator value_type() const { return val; }protected:  value_type val;};#if (__GNUC__ < 9) /* let the conversion operator handle all these ops */template <class T>std::ostream& operator<<(std::ostream& os, const elt_ref<T>& er) {  typedef typename elt_ref<T>::value_type value_type;   os << value_type(er);  return os;}template <class OneD>std::ostream& operator<<(std::ostream& os, const const_elt_ref<OneD>& er) {  typedef typename const_elt_ref<OneD>::value_type value_type;  os << value_type(er);  return os;}#define ELTREF_BINARY_OP(OP) \template <class T, class U> \T operator OP (const T& a, const elt_ref<U>& e) { \  return a OP T(e); \} \template <class T, class U> \T operator OP (const elt_ref<U>& e, const T& a) { \  return T(e) OP a; \} \template <class V, class U> \typename elt_ref<V>::value_type \operator OP (const elt_ref<V>& f, const elt_ref<U>& e) { \  typedef typename elt_ref<V>::value_type T; \  return T(f) OP T(e); \}ELTREF_BINARY_OP(+)ELTREF_BINARY_OP(-)ELTREF_BINARY_OP(*)ELTREF_BINARY_OP(/)#define ELTREF_COMPARISON_OP(OP) \template <class T, class U> \bool operator OP (const T& a, const elt_ref<U>& e) { \  return a OP T(e); \} \template <class T, class U> \bool operator OP (const elt_ref<U>& e, const T& a) { \  return T(e) OP a; \} \template <class V, class U> \bool operator OP (const elt_ref<V>& f, const elt_ref<U>& e) { \  typedef typename elt_ref<V>::value_type T; \  return T(f) OP T(e); \}ELTREF_COMPARISON_OP(==)ELTREF_COMPARISON_OP(!=)ELTREF_COMPARISON_OP(<)ELTREF_COMPARISON_OP(>)ELTREF_COMPARISON_OP(<=)ELTREF_COMPARISON_OP(>=)#define CONST_ELTREF_BINARY_OP(OP) \template <class T, class U> \T operator OP (const T& a, const const_elt_ref<U>& e) { \  return a OP T(e); \} \template <class T, class U> \T operator OP (const const_elt_ref<U>& e, const T& a) { \  return T(e) OP a; \} \template <class V, class U> \typename const_elt_ref<V>::value_type \operator OP (const const_elt_ref<V>& f, const const_elt_ref<U>& e) { \  typedef typename const_elt_ref<V>::value_type T; \  return T(f) OP T(e); \}CONST_ELTREF_BINARY_OP(+)CONST_ELTREF_BINARY_OP(-)CONST_ELTREF_BINARY_OP(*)CONST_ELTREF_BINARY_OP(/)#define CONST_ELTREF_COMPARISON_OP(OP) \template <class T, class U> \bool operator OP (const T& a, const const_elt_ref<U>& e) { \  return a OP T(e); \} \template <class T, class U> \bool operator OP (const const_elt_ref<U>& e, const T& a) { \  return T(e) OP a; \} \template <class V, class U> \bool \operator OP (const const_elt_ref<V>& f, const const_elt_ref<U>& e) { \  typedef typename const_elt_ref<V>::value_type T; \  return T(f) OP T(e); \}CONST_ELTREF_COMPARISON_OP(==)CONST_ELTREF_COMPARISON_OP(!=)CONST_ELTREF_COMPARISON_OP(<)CONST_ELTREF_COMPARISON_OP(>)CONST_ELTREF_COMPARISON_OP(<=)CONST_ELTREF_COMPARISON_OP(>=)#endif  //:  // two indices stored with each element.template <class T>struct entry2 {  typedef entry2<T> self;  typedef T value_type;  int row, col;  value_type value;  inline entry2() : row(-1), col(-1), value(0.0) { }  inline entry2(int r, int c, value_type v = value_type())    : row(r), col(c), value(v) { }  inline entry2(const self& x) : row(x.row), col(x.col), value(x.value) { }  inline self& operator =(const self& x) {    row = x.row;    col = x.col;    value = x.value;    return *this;  }  inline bool operator == (const entry2& e) const {    return row == e.row && col == e.col; }};} /* namespace mtl */#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜久久电影网| 麻豆精品在线视频| 美女一区二区在线观看| 成人av网在线| 日韩欧美一级在线播放| 亚洲激情网站免费观看| 国产69精品久久777的优势| 欧美日韩国产区一| 亚洲欧美日韩久久| 国产 日韩 欧美大片| 91精品国产色综合久久久蜜香臀| 国产精品福利影院| 粉嫩av一区二区三区在线播放| 欧美一区二区三区人| 亚洲精品ww久久久久久p站| 国内精品国产成人国产三级粉色 | 国产综合久久久久久鬼色| 欧美色综合久久| 亚洲男人的天堂在线aⅴ视频| 国产一区不卡精品| 欧美tickling网站挠脚心| 午夜精品久久久久久久| 色天天综合色天天久久| 最新国产成人在线观看| 成人av网站在线观看免费| 国产日韩欧美激情| 床上的激情91.| 国产色一区二区| 国产精品自拍毛片| 国产亚洲欧美日韩在线一区| 久久99精品久久久久久国产越南| 日韩一级大片在线| 久久精品国产77777蜜臀| 日韩一级片在线播放| 奇米888四色在线精品| 91精品国产综合久久香蕉的特点| 日欧美一区二区| 日韩一区二区在线看| 久久er精品视频| 久久一区二区三区国产精品| 国产成人精品亚洲777人妖| 国产日韩欧美不卡在线| av资源网一区| 亚洲午夜在线视频| 91精品国产aⅴ一区二区| 蜜乳av一区二区| 久久久久成人黄色影片| 亚洲免费观看高清在线观看| 中文字幕一区二区三区四区| 亚洲综合色自拍一区| 5858s免费视频成人| 久久精品欧美一区二区三区不卡 | 最新热久久免费视频| 精品久久久久一区| 91.com在线观看| 日本高清不卡aⅴ免费网站| 国产精品亚洲第一区在线暖暖韩国| 亚洲成人精品在线观看| 亚洲色图.com| 最新日韩在线视频| 国产精品国产a| 国产精品情趣视频| 久久久久久免费| 精品国产乱码久久久久久闺蜜| 懂色av中文字幕一区二区三区| 亚洲午夜精品在线| 视频一区视频二区中文| 亚洲精品一卡二卡| 国产精品第一页第二页第三页| 久久久久久久久久久久电影| 日韩精品中午字幕| 欧美大片一区二区| 欧美大黄免费观看| 欧美一卡二卡三卡| 欧美一级欧美三级在线观看| 91麻豆精品国产自产在线| 欧美日韩精品一区二区在线播放| 在线观看亚洲一区| 欧美日韩在线观看一区二区 | a级精品国产片在线观看| 9色porny自拍视频一区二区| 岛国精品在线播放| www.欧美日韩国产在线| www.日韩在线| 91成人看片片| 欧美日韩一二区| 日韩一级视频免费观看在线| 久久综合五月天婷婷伊人| 久久久影视传媒| 国产精品大尺度| 一区二区三区精品久久久| 亚洲电影视频在线| 久久精品国产色蜜蜜麻豆| 国产一区二区精品在线观看| 国产乱码一区二区三区| 不卡大黄网站免费看| 在线视频国内一区二区| 51久久夜色精品国产麻豆| 精品国产凹凸成av人网站| 国产精品视频你懂的| 亚洲欧美另类久久久精品2019| 五月开心婷婷久久| 激情五月播播久久久精品| 不卡的av在线| 在线综合亚洲欧美在线视频| 久久精品一区二区三区不卡 | 日韩一区二区三区精品视频| 国产亚洲一区二区三区在线观看 | 午夜视频在线观看一区二区三区| 麻豆精品在线播放| 99re视频这里只有精品| 91精品国产综合久久精品性色| 精品动漫一区二区三区在线观看| 国产精品免费人成网站| 一区二区三区成人| 国产一区二区免费视频| 91老师片黄在线观看| 日韩免费观看高清完整版| 综合av第一页| 麻豆精品视频在线| 91久久精品一区二区| 日韩免费高清av| 樱桃视频在线观看一区| 九九视频精品免费| 欧美优质美女网站| 中文字幕 久热精品 视频在线| 亚洲自拍偷拍麻豆| 成人av电影在线观看| 日韩欧美国产三级电影视频| 亚洲精品国产精华液| 国产乱对白刺激视频不卡| 欧美精品国产精品| 亚洲特级片在线| 国产在线精品一区二区不卡了| 在线观看亚洲a| 国产精品每日更新在线播放网址| 秋霞国产午夜精品免费视频| 色综合天天做天天爱| 欧美激情中文字幕一区二区| 美女被吸乳得到大胸91| 精品视频在线免费| 亚洲欧美日韩国产一区二区三区| 国产乱码精品一区二区三| 9191精品国产综合久久久久久| 1区2区3区国产精品| 国产成人精品免费在线| 精品av久久707| 日本不卡视频一二三区| 欧美午夜精品电影| 亚洲欧洲中文日韩久久av乱码| 国产精品12区| 国产亚洲视频系列| 激情小说亚洲一区| 精品少妇一区二区三区在线播放 | 欧美a级理论片| 91麻豆精品国产91久久久资源速度 | 美女在线视频一区| 666欧美在线视频| 亚洲电影一区二区| 欧美日本免费一区二区三区| 亚洲精品日韩专区silk| 91久久人澡人人添人人爽欧美| 日韩美女视频19| 99国产精品久久久久久久久久久| 欧美国产欧美综合| 成人a免费在线看| 日韩久久一区二区| 色综合久久久久| 一区二区三区在线视频免费| 色久优优欧美色久优优| 一区二区三区自拍| 欧美日韩国产一级二级| 亚洲国产精品嫩草影院| 欧美日韩小视频| 日本一区中文字幕| 精品国产免费一区二区三区四区| 久久精品国产一区二区三| 久久午夜国产精品| 成人免费视频免费观看| 亚洲欧美中日韩| 在线观看欧美精品| 免费欧美高清视频| 久久精品免视看| 色综合色综合色综合| 亚洲成av人片www| 日韩精品在线网站| 菠萝蜜视频在线观看一区| 亚洲久草在线视频| 欧美一区二区视频网站| 精油按摩中文字幕久久| 中文字幕av免费专区久久| 99精品国产一区二区三区不卡| 一区二区三区四区视频精品免费 | 亚洲制服丝袜在线| 欧美高清激情brazzers| 久久99久久久久久久久久久| 欧美国产日本视频| 欧美高清视频在线高清观看mv色露露十八| 日本欧美久久久久免费播放网| 国产视频视频一区|