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

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

?? rstd.h

?? C語言前端編譯器,yacc/lex編寫,可自行修改代碼.
?? H
字號:
// Copyright 2000 by Robert Dick.
// All rights reserved.

#ifndef R_STD_H_
#define R_STD_H_

// Misc. debugging, type conversion, and control utilities.

// Define ROB_DEBUG to turn on debugging.

/* FIXME: When numeric_traits<> are in the library, change X_MAX, X_MIN, etc.

FIXME: When the library supports the std namespace, use prefixes.

FIXME: Turn on exception handling for IO when the compiler supports it --
a number of operations with the potential to fail are not checked now.

FIXME: At some point, this whole library should be put in a namespace of its
own.  Do this after the standard library supports std::.
*/

/*###########################################################################*/
#include <iostream>

extern ostream cerrhex;
extern ostream couthex;

#undef PI
const double PI = 3.14159265358979323846;

// Use for a sane and fast vector of bools.
typedef int big_bool;

/*===========================================================================*/
// Utility

/* In general, macros are dangerous.  I consider the following MAP macros
justified.  This case occurs frequently in algorithms.  These make code easier
to read and maintain. */

#define MAP(a, end_a) \
	for (long a = 0; (a) < (end_a); (a)++)

#define MAP2(a, end_a, b, end_b) \
	for (long a = 0; (a) < (end_a); (a)++) \
		for (long b = 0; (b) < (end_b); (b)++)

#define MAP3(a, end_a, b, end_b, c, end_c) \
	for (long a = 0; (a) < (end_a); (a)++) \
		for (long b = 0; (b) < (end_b); (b)++) \
			for (long c = 0; (c) < (end_c); (c)++)

#define MAP4(a, end_a, b, end_b, c, end_c, d, end_d) \
	for (long a = 0; (a) < (end_a); (a)++) \
		for (long b = 0; (b) < (end_b); (b)++) \
			for (long c = 0; (c) < (end_c); (c)++) \
				for (long d = 0; (d) < (end_d); (d)++)

#define MAPU(a, end_a) \
	for (unsigned long a = 0; (a) < (end_a); (a)++)

#define MAPU2(a, end_a, b, end_b) \
	for (unsigned long a = 0; (a) < (end_a); (a)++) \
		for (unsigned long b = 0; (b) < (end_b); (b)++)

#define MAPU3(a, end_a, b, end_b, c, end_c) \
	for (unsigned long a = 0; (a) < (end_a); (a)++) \
		for (unsigned long b = 0; (b) < (end_b); (b)++) \
			for (unsigned long c = 0; (c) < (end_c); (c)++)

#define MAPU4(a, end_a, b, end_b, c, end_c, d, end_d) \
	for (unsigned long a = 0; (a) < (end_a); (a)++) \
		for (unsigned long b = 0; (b) < (end_b); (b)++) \
			for (unsigned long c = 0; (c) < (end_c); (c)++) \
				for (unsigned long d = 0; (d) < (end_d); (d)++)

/*===========================================================================*/
// Debugging

// Macros need to be used to accomplish this.  Inlines won't work.

// Print position in code.
void rpos(const char * file, int line);
#define Rpos() rpos(__FILE__, __LINE__)

// Print position in code and abort after printing message.
void rabort(const char * file, int line,
	const char * message = "Program aborted.\n");

void rexit(const char * message = "Exiting.\n");

#define Rabort() rabort(__FILE__, __LINE__)

// Abort, printing position in code, if (! x).
void rassert(bool x, const char * file, int line);
#define Rassert(x) rassert((x), __FILE__, __LINE__)

inline void rconfirm(bool x, const char * message) { if (! x) rexit(message); }

// Print variable name and contents.  For temporary debugging use only.
#define Rdump(x) (cerr << #x << ": " << (x) << endl)
#define Rdumphex(x) (cerrhex << #x << ": 0x" << (x) << endl)

template <bool> struct static_assert;
template<> struct static_assert<true> { static_assert() {} };
// No false definition.  Compile-time failure if assertion fails.
#define STATIC_ASSERT(x) static_assert<(x)>()

template <int i>
struct int_to_type {
	enum { value = I };
};

template <typename T>
struct type_to_type {
	typedef T orig_type;
};

template <typename T>
struct conversion_exists_helper {
	struct YES { char a; };
	struct NO { char a[5]; };

	static YES test(T);
	static NO test(...);
};

template <typename T>
	T make_instance();

template <typename D, typename B>
struct conversion_exists {
	enum { result =
		(sizeof(conversion_exists_helper<B>::test(
		make_instance<D>())) ==
		sizeof(conversion_exists_helper<B>::YES)) };
};

template <typename A, typename B>
struct same_type {
	enum { result = 0 };
};

template <typename A>
struct same_type<A, A> {
	enum { result = 1 };
};

template <typename D, typename B>
struct same_or_derived {
	enum { result = conversion_exists<const D *, const B *>::result &&
		! same_type<const void *, const B *>::result };
};

#define SAME_OR_DERIVED(D, B) \
	(CONVERSION_EXISTS(const D *, const B *) && \
	! SAME_TYPE(const void *, const B *))

#ifdef ROB_DEBUG

#define RDEBUG(x) (x)
#define RASSERT(x) rassert((x), __FILE__, __LINE__)
#define RCONFIRM(x, y) rconfirm((x), (y))
#else

#define RDEBUG(x) do {} while (0)
#define RASSERT(x) do {} while (0)
#define RCONFIRM(x, y) do {} while (0)
#endif

/*===========================================================================*/
// The following two are safe.
template <typename T>
	const T & rtoconst(T & x) { return x; }

template <typename T>
	const T * ptoconst(T * x) { return x; }

/* These are potentially dangerous.  Use to avoid duplicate code (and errors)
in const and non-const methods. */

template <typename T>
	T & runconst(const T & x) { return const_cast<T & >(x); }

template <typename T>
	T * punconst(const T * x) { return const_cast<T *>(x); }

// Type conversions which are run-time checked when debugging is on.
int to_signed(unsigned x);
long to_signed(unsigned long x);
unsigned to_unsigned(int x);
unsigned long to_unsigned(long x);


/*===========================================================================*/
void RStd_test();

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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品福利在线一区二区三区 | 日本大胆欧美人术艺术动态| 国产无一区二区| 69av一区二区三区| 91美女在线观看| 99热精品国产| www.亚洲精品| 成人激情免费网站| 国产乱理伦片在线观看夜一区| 蜜桃一区二区三区在线观看| 亚洲国产美国国产综合一区二区| 亚洲欧美中日韩| 亚洲欧洲av在线| 中文字幕综合网| 国产精品久久久久久亚洲伦 | 国产精品―色哟哟| 日本一区二区三区四区在线视频| 久久夜色精品国产欧美乱极品| 欧美一卡二卡三卡四卡| 欧美美女直播网站| 欧美日韩一区二区三区在线| 欧美丝袜第三区| 欧美调教femdomvk| 欧美日韩一区在线观看| 欧美日韩国产成人在线91 | 最新不卡av在线| 综合在线观看色| 一片黄亚洲嫩模| 亚洲高清中文字幕| 亚洲五月六月丁香激情| 亚洲综合在线电影| 污片在线观看一区二区| 日韩高清不卡一区二区三区| 欧美aⅴ一区二区三区视频| 人妖欧美一区二区| 极品少妇xxxx精品少妇| 国产一区二区剧情av在线| 国产成人精品免费看| 成人av资源在线| 色综合一个色综合| 欧美午夜精品久久久久久超碰| 欧美日韩亚洲综合在线| 91精品免费观看| 欧美精品一区二区三区蜜桃视频 | 国产suv精品一区二区6| 成人一区二区三区中文字幕| 国产精品亚洲人在线观看| 成人av资源在线| 在线精品视频一区二区| 欧美大胆一级视频| 国产喷白浆一区二区三区| 国产精品剧情在线亚洲| 午夜免费欧美电影| 国产福利精品导航| 日本韩国欧美在线| 日韩色视频在线观看| 亚洲国产精品国自产拍av| 亚洲激情综合网| 精品一区二区综合| 97久久精品人人做人人爽| 欧美日韩一区二区三区高清| 日韩精品影音先锋| 日韩码欧中文字| 石原莉奈一区二区三区在线观看 | 国产精品99精品久久免费| 91麻豆自制传媒国产之光| 91精品国产综合久久精品app| 精品国产一区二区三区忘忧草| 亚洲婷婷综合色高清在线| 日本在线播放一区二区三区| 粉嫩在线一区二区三区视频| 欧美日韩一区高清| 精品国产青草久久久久福利| 国产欧美日本一区视频| 亚洲精品日韩专区silk| 久久精品二区亚洲w码| 91国偷自产一区二区开放时间| 精品粉嫩aⅴ一区二区三区四区| 国产精品乱人伦中文| 免费成人av在线播放| 97se亚洲国产综合自在线不卡| 日韩欧美国产电影| 一二三区精品福利视频| 成人一区二区三区| 欧美一级夜夜爽| 亚洲精品网站在线观看| 国产精品一区二区在线观看网站| 欧美日韩国产小视频在线观看| 久久久91精品国产一区二区三区| 亚洲一区二区四区蜜桃| 成人污污视频在线观看| 精品国产一二三| 天使萌一区二区三区免费观看| 国产精品亚洲人在线观看| 欧美日韩精品高清| 亚洲麻豆国产自偷在线| 国产精品影音先锋| 日韩一区二区免费视频| 性久久久久久久| 在线观看欧美日本| **网站欧美大片在线观看| 国产精品中文字幕欧美| 精品欧美乱码久久久久久| 亚洲午夜电影网| 日本久久精品电影| 亚洲欧美自拍偷拍色图| 成av人片一区二区| 欧美极品少妇xxxxⅹ高跟鞋| 九九九精品视频| 欧美一区二区三区系列电影| 一个色综合网站| 91色在线porny| 国产日韩成人精品| 国产69精品久久久久毛片| 国产午夜精品一区二区三区嫩草| 美腿丝袜亚洲一区| 日韩一区二区三区电影| 石原莉奈在线亚洲二区| 欧美日韩和欧美的一区二区| 亚洲一区二区三区美女| 欧美在线不卡一区| 一区二区三区 在线观看视频 | 久久亚区不卡日本| 奇米四色…亚洲| 日韩一区二区三区四区| 裸体在线国模精品偷拍| 日韩三级视频在线观看| 久久成人免费网站| 国产亚洲污的网站| 国产成人欧美日韩在线电影| 亚洲国产精品成人久久综合一区| 国产精品 欧美精品| 国产精品国产精品国产专区不片| 国产成人在线视频网址| 国产日韩av一区二区| 懂色av中文一区二区三区| 久久综合久久鬼色| 国产黄色精品视频| 国产精品欧美一区二区三区| 色视频欧美一区二区三区| 亚洲国产精品一区二区久久| 欧美高清激情brazzers| 狠狠色综合日日| 精品久久人人做人人爽| 成人黄页在线观看| 亚洲一区电影777| 日韩三区在线观看| 国产不卡一区视频| 亚洲柠檬福利资源导航| 91免费在线看| 五月天中文字幕一区二区| 欧美日韩日日摸| 乱一区二区av| 国产精品传媒视频| 欧美日韩dvd在线观看| 久热成人在线视频| 综合av第一页| 日韩欧美国产一区二区三区| 成人免费毛片app| 亚洲成人午夜影院| 久久婷婷色综合| 色婷婷av一区二区三区大白胸| 日韩国产精品久久久久久亚洲| 欧美影视一区二区三区| 国产一区二区三区四区五区入口| 1区2区3区国产精品| 日韩一区二区在线观看视频| 丰满放荡岳乱妇91ww| 亚洲成人自拍偷拍| 中文字幕一区二区三区在线播放| 精品少妇一区二区三区视频免付费| 在线视频观看一区| 成人免费观看男女羞羞视频| 久久精品国产99国产精品| 午夜精品久久久久久久| 亚洲欧美激情小说另类| 欧美国产精品一区二区三区| 欧美大肚乱孕交hd孕妇| 欧美日韩国产高清一区二区三区| 97久久超碰国产精品电影| 国产成人免费视频精品含羞草妖精| 人人狠狠综合久久亚洲| 亚洲va国产va欧美va观看| 最新日韩av在线| 国产精品欧美精品| 久久久精品免费观看| 精品美女一区二区| 日韩欧美亚洲另类制服综合在线| 欧美日韩精品一区二区三区| 色噜噜久久综合| 色综合久久久久久久| 97国产一区二区| 99国产精品视频免费观看| 成人国产在线观看| 成人黄色av电影| 成人精品免费视频| 成人免费视频一区二区| 成人激情黄色小说| 99视频一区二区| 色欧美88888久久久久久影院|