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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? rvector.h

?? C語(yǔ)言前端編譯器,yacc/lex編寫(xiě),可自行修改代碼.
?? H
字號(hào):
// Copyright 2000 by Robert Dick.
// All rights reserved.

#ifndef R_VECTOR_H_
#define R_VECTOR_H_

/*###########################################################################*/
#ifdef ROB_DEBUG
#	include <iostream>
#	include <typeinfo>
#endif

#include "RStd.h"
#include "Interface.h"

#include <iosfwd>
#include <vector>
#include <climits>
#include <functional>

template <int, typename> class NoIndex;
template <int, typename> class FVector;

/*===========================================================================*/
/* A number of vector classes. */

/*===========================================================================*/
/* Implemented in terms of vector.  Changes vector's behavior.  Can't be
instantiated or destroyed.  For use in non-polymophic inheritance. */

template <typename T>
class RVector :
	public Prints<RVector<T>, T, true>,
	public Comps<RVector<T>, T, true>,
	public Clones<RVector<T> >,
	public Swaps<RVector<T> >,
	public SChecks<RVector<T> >
{
	typedef vector<T> impl;
	typedef RVector<T> self;

public:
// Changed.
	typedef long size_type;

// Typedefs
	typedef typename impl::value_type value_type;
	typedef typename impl::pointer pointer;
	typedef typename impl::const_pointer const_pointer;
	typedef typename impl::iterator iterator;
	typedef typename impl::const_iterator const_iterator;
	typedef typename impl::reference reference;
	typedef typename impl::const_reference const_reference;
	typedef typename impl::difference_type difference_type;
	typedef typename impl::allocator_type allocator_type;
	typedef typename impl::const_reverse_iterator const_reverse_iterator;
	typedef typename impl::reverse_iterator reverse_iterator;	

// Construction
	virtual ~RVector() throw() {}
	RVector() : impl_() {}
	RVector(size_t n, const T & value) : impl_(n, value) {}
	explicit RVector(size_type n) : impl_(n) {}

	template <typename T2>
		RVector(const RVector<T2> & a) : impl_(a.begin(), a.end()) {}

	template <typename InIter>
		RVector(InIter first, InIter last) : impl_(first, last) {}

// Interface
	virtual void rswap(self & a) { impl_.swap(a.impl_); }
	virtual void self_check() const {}
	virtual void self_check_deep() const;
	virtual self * clone() const { return new self(*this); }

// Modifiable
	virtual self & operator=(const self & a);

// Final
	comp_type comp_default(const self & b) const;
	void print_to_default(ostream & os) const { print_cont(*this, os, " "); }
	size_type size() const { return static_cast<size_type>(impl_.size()); }
	size_type max_size() const { return LONG_MAX; }
	T & operator[](size_type a);
	const T & operator[](size_type a) const;	

	iterator begin() { return impl_.begin(); }
	const_iterator begin() const { return impl_.begin(); }
	iterator end() { return impl_.end(); }
	const_iterator end() const { return impl_.end(); }
	reverse_iterator rbegin() { return impl_.rbegin(); }
	const_reverse_iterator rbegin() const { return impl_.rbegin(); }
	reverse_iterator rend() { return impl_.rend(); }
	const_reverse_iterator rend() const { return impl_.rend(); }
	size_type capacity() const { return impl_.capacity(); }
	bool empty() const { return impl_.empty(); }

// FIXME: Compiler bug prevents 'using' for templates.
	void assign(size_type n, const T & val) { impl_.assign(n, val); }

	template <class InIter>
		void assign(InIter first, InIter last);

	void reserve(size_type n) { impl_.reserve(n); }
	reference front() { return impl_.front(); }
	const_reference front() const { return impl_.front(); }
	reference back() { return impl_.back(); }
	const_reference back() const { return impl_.back(); }
	void push_back(const_reference x) { impl_.push_back(x); }
	void pop_back() { impl_.pop_back(); }

// FIXME: Compiler bug prevents 'using' for templates.
	T * insert(T * pos, const T & x);
	T * insert(T * pos) { return impl_.insert(pos); }

	template <typename InIter>
		void insert(T * pos, InIter first, InIter last);

	void insert(T * pos, size_type n, const T & x);

	iterator erase(iterator a) { return impl_.erase(a); }
	iterator erase(iterator a, iterator b) { return impl_.erase(a, b); }
	void resize(size_type sz, const T & x) { impl_.resize(sz, x); }
	void resize(size_type new_size) { impl_.resize(new_size); }
	void clear() { impl_.clear(); }

private:
		impl impl_;
};

/*===========================================================================*/
/* Recursively defined multidimensional vector.
Use with INDEX of FVector for arbitrary indexing.
Use with INDEX inherited from FVector for specialized indexing.
Use with INDEX of NoIndex for no multidimensional indexing. */

template <int DIM, typename T,
template <int, typename> class INDEX = FVector>
class MVector :
	public RVector<MVector<DIM - 1, T, INDEX> >
{
	typedef RVector<MVector<DIM - 1, T, INDEX> > super;
	typedef MVector self;
	typedef typename super::size_type size_type;
	typedef typename super::reference reference;
	typedef typename super::const_reference const_reference;

public:
	virtual ~MVector() throw() {}

	MVector() {}
	MVector(size_t n, typename super::const_reference value);
	explicit MVector(size_type n) : super(n) {}

	template <typename T2>
		MVector(const MVector<DIM, T2, INDEX> & a) : super(a) {}

	template <typename InIter>
		MVector(InIter first, InIter last) : super(first, last) {}

// New methods.
	template <typename IT>
		T & operator[](const INDEX<DIM, IT> & indx);

	template <typename IT>
		const T & operator[](const INDEX<DIM, IT> & indx) const;

// Forwarded methods.
	reference operator[](size_type a) { return super::operator[](a); }
	const_reference operator[](size_type a) const;

private:
// FIXME: Take this out-of-line when the compiler supports it.
	template <typename IT>
		T & dim_index(const IT * indx)
		{ return (*this)[*indx].dim_index<IT>(indx + 1); }

// FIXME: Take this out-of-line when the compiler supports it.
	template <typename IT>
		const T & dim_index(const IT * indx) const
		{ return (*this)[*indx].dim_index<IT>(indx + 1); }

	friend MVector<DIM + 1, T, INDEX>;
};

/*===========================================================================*/
// Recursion terminating case of recursively defined multi-dimensional vector.

template <typename T, template <int, typename> class INDEX>
class MVector<1, T, INDEX> :
	public RVector<T>
{
	typedef RVector<T> super;
	typedef MVector<1, T, INDEX> self;
	typedef typename super::size_type size_type;

public:
	virtual ~MVector() throw() {}

	MVector() {}
	MVector(size_t n, const T & value) : super(n, value) {}
	explicit MVector(size_type n) : super(n) {}

	MVector(const super & a) : super(a) {}

	template <typename T2>
		MVector(const MVector<1, T2, INDEX> & a) : super(a) {}

	template <typename InIter>
		MVector(InIter first, InIter last) : super(first, last) {}

// New methods.
	template <typename IT>
		T & operator[](const INDEX<1, IT> & a);

	template <typename IT>
		const T & operator[](const INDEX<1, IT> & a) const;

// Forwarded methods.
	T & operator[](size_type a) { return super::operator[](a); }
	const T & operator[](size_type a) const { return super::operator[](a); }

private:
	template <typename IT>
		T & dim_index(const IT * indx) { return (*this)[*indx]; }

	template <typename IT>
		const T & dim_index(const IT * indx) const { return (*this)[*indx]; }

	friend MVector<2, T, INDEX>;
};

/*===========================================================================*/
void RVector_test();

/*###########################################################################*/
#include "RVector.cct"
#endif

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91久久精品一区二区二区| 欧美精品第1页| 国产不卡视频一区| 国产精品一区二区三区乱码| 精品一区二区综合| 激情成人午夜视频| 风间由美一区二区av101| 国产激情偷乱视频一区二区三区 | 麻豆免费精品视频| 免费观看在线综合色| 久久精品国产精品亚洲精品| 激情国产一区二区| 国产91精品久久久久久久网曝门| 成人丝袜高跟foot| 99视频热这里只有精品免费| 91福利在线播放| 欧美视频一区二区三区四区 | 亚洲精品日日夜夜| 亚洲图片自拍偷拍| 日韩av网站在线观看| 久久99深爱久久99精品| 国产成人免费xxxxxxxx| caoporn国产一区二区| 在线免费亚洲电影| 欧美一区二区高清| 国产欧美在线观看一区| 亚洲图片激情小说| 日韩精品一卡二卡三卡四卡无卡| 久久成人av少妇免费| 国产福利不卡视频| 91国产丝袜在线播放| 91精品国产91热久久久做人人| 精品国产污污免费网站入口| 国产精品素人视频| 亚洲成a人片综合在线| 国产一区二区在线免费观看| 色综合一区二区三区| 91精品欧美久久久久久动漫| 久久婷婷色综合| 亚洲柠檬福利资源导航| 美女视频免费一区| 99久久精品国产一区二区三区 | 国产午夜亚洲精品午夜鲁丝片 | 亚洲激情图片一区| 麻豆视频观看网址久久| 91丨九色丨国产丨porny| 日韩一区二区三区四区| 亚洲日本在线天堂| 久草这里只有精品视频| 在线观看日韩一区| 久久精品男人的天堂| 亚洲成av人片一区二区三区| 粉嫩欧美一区二区三区高清影视 | 亚洲五码中文字幕| 国产成a人无v码亚洲福利| 欧美日韩国产一区二区三区地区| 国产农村妇女毛片精品久久麻豆| 亚洲国产sm捆绑调教视频| 国产精品自在欧美一区| 欧美日韩免费观看一区二区三区| 国产欧美1区2区3区| 日韩一区精品视频| 91小宝寻花一区二区三区| 欧美不卡视频一区| 亚洲午夜在线视频| 99久久夜色精品国产网站| 精品欧美一区二区久久| 午夜a成v人精品| 91在线视频播放地址| 国产亚洲精品超碰| 麻豆国产一区二区| 欧美喷潮久久久xxxxx| 日韩理论电影院| 国产精品1区二区.| 精品区一区二区| 日本免费新一区视频| 在线观看视频欧美| 亚洲欧美一区二区三区孕妇| 国产精品一卡二| 欧美电视剧在线看免费| 日日骚欧美日韩| 欧美午夜精品久久久久久超碰| 国产精品每日更新| 国产一区二区三区免费观看| 日韩午夜在线影院| 青青草国产精品97视觉盛宴| 欧美日韩在线播放三区四区| 一区二区三区四区亚洲| 91丨国产丨九色丨pron| 综合久久综合久久| www.亚洲国产| 中文字幕亚洲综合久久菠萝蜜| 国产精品综合在线视频| 久久伊人中文字幕| 国产一区二区三区在线看麻豆| 日韩久久精品一区| 麻豆视频一区二区| 精品三级在线观看| 精久久久久久久久久久| 欧美一区二区三区在线观看 | 美女免费视频一区| 日韩午夜激情视频| 免费观看一级特黄欧美大片| 欧美一区二区视频网站| 奇米777欧美一区二区| 欧美一区二区三区色| 免费在线成人网| 精品少妇一区二区三区| 国产精品一区二区久激情瑜伽| 国产日韩精品一区二区浪潮av| 国产麻豆精品久久一二三| 国产日韩高清在线| 成人动漫一区二区在线| 亚洲人成在线观看一区二区| 欧美色图12p| 蜜臀久久99精品久久久久宅男| 欧美zozozo| 岛国av在线一区| 亚洲欧美日本韩国| 欧美日韩亚洲综合一区| 日韩va欧美va亚洲va久久| 欧美变态凌虐bdsm| 国产成人鲁色资源国产91色综| 国产精品伦理一区二区| 一本到三区不卡视频| 爽好久久久欧美精品| 精品av综合导航| 成人av在线播放网站| 亚洲国产日韩a在线播放性色| 7777精品伊人久久久大香线蕉经典版下载 | 欧美精品乱码久久久久久| 麻豆一区二区三区| 欧美韩国日本不卡| 91黄色激情网站| 麻豆一区二区三区| 国产精品福利一区| 欧美日韩国产综合一区二区| 精品一区二区三区av| 国产精品盗摄一区二区三区| 欧美日本乱大交xxxxx| 激情成人综合网| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 欧美性感一区二区三区| 激情都市一区二区| 亚洲欧美激情在线| 欧美一区二视频| 不卡电影一区二区三区| 日韩国产在线观看一区| 欧美激情综合在线| 欧美男人的天堂一二区| 国产精品亚洲一区二区三区在线| 一区二区三区在线视频观看| 精品区一区二区| 色噜噜狠狠成人网p站| 狠狠色综合播放一区二区| 一区二区在线观看视频 | 久久精品国产亚洲5555| 亚洲欧美日韩国产综合| 日韩女优视频免费观看| 在线观看日韩高清av| 国产精品综合网| 日韩av电影免费观看高清完整版| 日韩一区有码在线| 欧美成人伊人久久综合网| 91高清视频免费看| 国产成人a级片| 蜜乳av一区二区三区| 一区二区久久久久| 国产女主播视频一区二区| 日韩一区二区三区四区| 欧美在线免费播放| eeuss国产一区二区三区| 精品一区二区在线免费观看| 午夜久久电影网| 亚洲特黄一级片| 欧美激情中文字幕| 精品国产91九色蝌蚪| 欧美日韩国产首页| 色呦呦日韩精品| 成人av在线电影| 国产成人在线网站| 久久99国内精品| 日本美女一区二区三区| 亚洲香肠在线观看| 一区二区三区在线视频观看58| 欧美激情在线看| 久久九九久精品国产免费直播| 日韩免费性生活视频播放| 欧美色国产精品| 精品1区2区3区| 在线观看亚洲专区| 色婷婷综合久久久中文字幕| 99视频在线观看一区三区| 成人午夜看片网址| 国产一区福利在线| 国产精品影音先锋| 国产黄色91视频| 国产精品亚洲成人| 国产精品中文有码| 高清在线观看日韩|