⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cvec.hpp

📁 这是个人脸识别程序
💻 HPP
字号:
// $common\cvec.hpp 1.5 milbo$ cvec is like STL vector but checks for out of range indices when _DEBUG is defined.// Warning: this is raw research code -- expect it to be quite messy.//// If _DEBUG is not defined the MSC compiler generates code with the same efficiency as vector.// I checked this by looking at disassembled code.// Lifted from Ulrich Breymann "Designing Components with the C++ STL" section 9.1//// milbo durban jan06// $common\cvec.hpp 1.0$#if !defined(cvec_hpp)#define cvec_hpp#include <vector>using namespace std;#if _DEBUGvoid __cdecl SysErr(const char *pArgs, ...);	// args like printf#define DASSERT(x) 	if (!(x)) SysErr("%s %d: FAIL %s", __FILE__, __LINE__, #x)#else#define DASSERT(x)#endiftemplate<typename T> class cvec: public vector<T>{public:		// typenames like iterator are also inheritedcvec() {}cvec(size_type n, const T& value=T()): vector<T>(n, value) {}cvec(iterator i, iterator j): vector<T>(i,j) {}reference operator[](difference_type i)	{	DASSERT(i >= 0 && i < (difference_type)size());	return vector<T>::operator[](i);	}const_reference operator[](difference_type i) const	{	DASSERT(i >= 0 && i < (difference_type)size());	return vector<T>::operator[](i);	}};#endif	// cvec_hpp

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -