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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? d_util.h

?? 本軟件利用VC++樹結構
?? H
字號:
#ifndef UTILITY_FUNCTIONS
#define UTILITY_FUNCTIONS

#include <iostream>
#include <vector>
#include <string>
#include <list>
#include <map>

#include "d_stree.h"		// for the stree class

using namespace std;

#ifdef _MSC_VER
// temporary fix for Microsoft VC++ 6.0 bug
istream& getline(istream& is, string& sbuff, char term_char = '\n');
#endif // _MSC_VER

// template function to output an n element array of type T
template <typename T>
void writeArray(const T arr[], int n);

// output the elements of v
template <typename T>
void writeVector(const vector<T>& v);

// display the list. follow the output of each list element
// by separator. default value of separator = "  "
template <typename T>
void writeList(const list<T>& alist, const string& separator);

// display the search tree. follow the output of each list element
// by separator. default value of separator = "  "
template <typename T>
void writeSTree(const stree<T>& t, const string& separator);

// display the elements of a container in the iterator
// range [first, last). output separator between items.
// default value of separator = "  "
template <typename Iterator>
void writeContainer(Iterator first, Iterator last, const string& separator);

// display the key-value pairs in the map. follow the output of
// each pair by separator. default value of separator = "  "
template <typename Key, typename T>
void writeMap(const map<Key,T>& m, const string& separator);

// return an iterator pointing to the maximum container
// value in the iterator range [first, last)
template <typename Iterator>
Iterator maxElement(Iterator first, Iterator last);

// class used to implement one-argument I/O manipulators
template<typename T>
class omanip1
{
   public:
      // constructor. initialize the private data members
      omanip1(ostream& (*f)(ostream & ostr, const T& x), const T& w):
         func(f), parm(w)
      {}

		// evaluate f.func with argument f.parm.
		// this function returns an ostream&
		friend ostream& operator<< (ostream& ostr, const omanip1<T>& f)
		{
			return(*f.func)(ostr, f.parm);
		}
   private:
      // pointer to the function that does the work
      ostream& (*func)(ostream& ostr, const T& x);
      // the two manipulator parameters stored in the class
      T parm;
};

// class used to implement two-argument I/O manipulators
template<typename T>
class omanip2
{
   public:
      // constructor. initialize the private data members
      omanip2(ostream& (*f)(ostream & ostr, const T& x, const T& y),
              const T& w, const T& p ) : func(f), parm1(w), parm2(p)
      {}

		// evaluate f.func with parameters f.parm1 and f.parm2.
		// this function returns an ostream&
		friend ostream& operator<< (ostream& ostr, const omanip2<T>& f)
		{
			return(*f.func)(ostr, f.parm1, f.parm2);
		}
   private:
      // pointer to the function that does the work
      ostream& (*func)(ostream& ostr, const T& x, const T& y);
      // the two manipulator parameters stored in the class
      T parm1;
      T parm2;
};

// change ostr to fixed mode precision with p decimal places.
// output the next stream data item in a field of w positions
ostream& sr(ostream &ostr, const int& w, const int& p);

// manipulator that sets field width and precision for fixed
// mode output
omanip2<int> setreal(int w, int p);

#ifdef _MSC_VER
istream& getline(istream& is,string& sbuff, char term_char)
{
	char tc, eof = char_traits<char>::eof();
	string::size_type numchars = 0;
	sbuff.erase();


	while(true)
	{
		tc = is.get();
		if(tc == eof) // eof - set failbit and quit
		{
			is.setstate(ios::failbit);
			break;
		}
		else if(tc == term_char) // termination char extracted
			break;

		sbuff.append(1,tc);
		numchars++;

		if(numchars == sbuff.max_size()) // max chars extracted
				break;
	}

	return is;
}
#endif // _MSC_VER

template <typename T>
void writeArray(const T arr[], int n)
{
	int i;

	for(i=0;i < n;i++)
		cout << arr[i] << "  ";
	cout << endl;
}

template <typename T>
void writeVector(const vector<T>& v)
{
	// capture the size of the vector in n
	int i, n = v.size();

	for(i = 0; i < n; i++)
		cout << v[i] << "  ";
	cout << endl;
}

template <typename T>
void writeList(const list<T>& alist, const string& separator = "  ")
{
	list<T>::const_iterator  iter;

	for (iter = alist.begin(); iter != alist.end(); iter++)
		cout << *iter << separator;
	cout << endl;
}

template <typename T>
void writeSTree(const stree<T>& t, const string& separator = "  ")
{
	stree<T>::const_iterator iter = t.begin();

	while (iter != t.end())
	{
		cout << *iter << separator;
		iter++;
	}
}

template <typename Iterator>
void writeContainer(Iterator first, Iterator last,
						  const string& separator = "  ")
{
	// declare iterator of type Iterator and initialize it
	// to have value first
	Iterator iter = first;

	while (iter != last)
	{
		cout << *iter << separator;
		iter++;
	}
}

template <typename Key, typename T>
void writeMap(const map<Key,T>& m, const string& separator = "  ")
{
	map<Key, T>::const_iterator iter = m.begin();

	while(iter != m.end())
	{
		cout << (*iter).first << "  " << (*iter).second << separator;
		iter++;
	}
}

template <typename Iterator>
Iterator maxElement(Iterator first, Iterator last)
{
	// initially, assume first points to largest element
	Iterator iter = first, maxIter = first;

	// move past first element
	iter++;

	// scan range, comparing values *iter and *maxIter
	// until reach the end of the range. change maxIter
	// whenever *maxIter < *iter
	while (iter != last)
	{
		// if iter points to a new maximum element, it becomes
		// maxIter
		if (*maxIter < *iter)
			maxIter = iter;
		iter++;
	}

	// return pointer to the largest element
	return maxIter;
}

ostream& sr(ostream& ostr, const int& w, const int& p)
{
   ostr.setf(ios::fixed, ios::floatfield);
   ostr.precision(p);
   ostr.width(w);

   return ostr;
}

// manipulator with field width and precision arguments
// using sr
omanip2<int> setreal(int w, int p)
{
   return omanip2<int> (sr,w,p);
}

#endif	// UTILITY_FUNCTIONS

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产午夜精品久久久久久免费视 | 日本aⅴ精品一区二区三区| 国产精品美日韩| 久久精品人人做人人综合 | 午夜精品影院在线观看| 亚洲一区二区三区免费视频| 亚洲图片欧美激情| 亚洲欧洲av色图| 中文字幕亚洲一区二区av在线| 欧美极品aⅴ影院| 国产日韩av一区二区| 久久嫩草精品久久久久| 久久久久久久久久久久久久久99| 精品国产乱码久久久久久久久| 欧美一区二区三区四区五区| 欧美一级精品在线| 日韩视频免费直播| 久久中文娱乐网| 国产亚洲一区二区三区在线观看| 久久蜜桃av一区精品变态类天堂 | 欧美性猛片aaaaaaa做受| 日本高清视频一区二区| 欧美午夜电影在线播放| 欧美久久一二三四区| 日韩一本二本av| 成人禁用看黄a在线| 日韩精品免费专区| 久久精品国产澳门| 国产经典欧美精品| 91猫先生在线| 51精品视频一区二区三区| 日韩精品资源二区在线| 国产亚洲精品精华液| 亚洲色图另类专区| 日韩和欧美的一区| 国产成人激情av| 91福利社在线观看| 日韩视频一区二区在线观看| 国产亚洲成aⅴ人片在线观看 | 一区二区三区免费看视频| 亚洲第一在线综合网站| 精品伊人久久久久7777人| 成人精品国产福利| 欧美日韩欧美一区二区| www激情久久| 亚洲欧美激情在线| 免费观看30秒视频久久| 成人福利在线看| 91麻豆精品国产91| 欧美国产一区二区| 五月天激情小说综合| 国产精品一区二区三区99| 91福利视频在线| 久久亚洲私人国产精品va媚药| 日韩理论片在线| 久久99久久久欧美国产| 色久优优欧美色久优优| 久久综合色天天久久综合图片| 亚洲免费色视频| 国精产品一区一区三区mba桃花| 色狠狠桃花综合| 久久久不卡网国产精品一区| 亚洲国产一区二区三区青草影视| 国产黑丝在线一区二区三区| 欧美精品一卡二卡| 亚洲欧洲日韩在线| 激情久久久久久久久久久久久久久久| 一本色道久久综合精品竹菊| 久久综合九色综合97婷婷女人| 亚洲综合色网站| 成人免费视频国产在线观看| 欧美二区乱c少妇| 亚洲欧美精品午睡沙发| 国产精品一区二区三区乱码| 91精品国产美女浴室洗澡无遮挡| 亚洲色图一区二区三区| 国产suv精品一区二区6| 日韩欧美亚洲一区二区| 亚洲午夜在线视频| 91在线看国产| 国产清纯白嫩初高生在线观看91| 日韩av中文在线观看| 色av一区二区| 亚洲欧美综合色| 国产suv精品一区二区6| 精品电影一区二区三区| 日本在线不卡一区| 欧美亚洲一区三区| 亚洲欧美激情视频在线观看一区二区三区| 国产自产高清不卡| 欧美电视剧在线看免费| 日本美女一区二区| 久久黄色级2电影| 本田岬高潮一区二区三区| 久久久久99精品国产片| 久久成人久久爱| 日韩一级片在线播放| 日韩精品一级二级| 欧美日韩www| 亚洲18女电影在线观看| 欧美调教femdomvk| 亚洲午夜在线电影| 欧美日韩黄色一区二区| 亚洲成人综合网站| 欧美色图一区二区三区| 夜夜嗨av一区二区三区中文字幕| 色天使久久综合网天天| 尤物av一区二区| 91久久精品网| 亚洲线精品一区二区三区八戒| 欧美性欧美巨大黑白大战| 亚洲高清视频在线| 91麻豆精品国产| 麻豆精品一二三| 欧美精品一区二区不卡 | 波多野结衣视频一区| 国产精品欧美久久久久一区二区 | 久久免费偷拍视频| 国产69精品久久99不卡| 国产精品第五页| 一本在线高清不卡dvd| 洋洋av久久久久久久一区| 精品视频999| 全国精品久久少妇| 久久久精品国产免大香伊| 成人一区二区视频| 最新热久久免费视频| 欧美影视一区二区三区| 日韩电影在线观看网站| 欧美精品一区二区三区蜜臀| 国产电影一区二区三区| 18成人在线视频| 欧美在线你懂的| 美女精品一区二区| 欧美极品少妇xxxxⅹ高跟鞋| 色婷婷av一区二区三区gif| 亚瑟在线精品视频| 2022国产精品视频| 91亚洲大成网污www| 天天综合天天做天天综合| 欧美精品一区二区高清在线观看| 成人av电影在线网| 亚洲成av人片在www色猫咪| 欧美电视剧在线观看完整版| 成人97人人超碰人人99| 午夜久久久久久久久久一区二区| 26uuu另类欧美亚洲曰本| 色综合网站在线| 欧美aaaaa成人免费观看视频| 欧美国产乱子伦| 欧美日韩精品一区二区三区| 国产精品18久久久久| 亚洲综合免费观看高清完整版| 日韩欧美国产精品一区| 99久精品国产| 另类成人小视频在线| 亚洲天堂2014| 精品国产一区二区三区久久久蜜月| www.亚洲免费av| 麻豆成人在线观看| 亚洲美女在线一区| 欧美精品一区二区三区视频| 欧美无砖砖区免费| 国产成人免费在线观看| 日韩电影免费在线看| 亚洲视频1区2区| 久久先锋影音av鲁色资源网| 欧美午夜精品电影| 丁香婷婷综合网| 蜜桃视频在线一区| 亚洲精品五月天| 国产欧美一区二区精品性色| 7777精品伊人久久久大香线蕉的| av激情综合网| 激情图片小说一区| 婷婷综合五月天| 亚洲女同ⅹxx女同tv| 久久久天堂av| 日韩欧美自拍偷拍| 在线一区二区三区做爰视频网站| 国产黄色精品网站| 九九热在线视频观看这里只有精品| 亚洲综合激情小说| 中文字幕一区二区三区精华液 | 中文字幕综合网| 精品成人免费观看| 欧美精品日韩一区| 在线观看不卡一区| 91香蕉视频污在线| www.亚洲免费av| 国产成人99久久亚洲综合精品| 久久精品国产澳门| 美女一区二区视频| 婷婷亚洲久悠悠色悠在线播放| 一区二区在线观看不卡| 亚洲视频在线一区二区| 中文字幕第一区| 日本一区二区电影| 国产清纯在线一区二区www| 久久久蜜桃精品|