您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ Base函数代码示例

51自学网 2021-06-01 19:54:36
  C++
这篇教程C++ Base函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中Base函数的典型用法代码示例。如果您正苦于以下问题:C++ Base函数的具体用法?C++ Base怎么用?C++ Base使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了Base函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: value_

inline AD<Base>::AD(const T &t) : value_(Base(t)), id_(CPPAD_MAX_NUM_THREADS), taddr_(0){ }
开发者ID:AndreasBrack,项目名称:WahlkreisSeminar,代码行数:5,


示例2: remove_whitespace

 remove_whitespace(T start) :     super_t(Base(static_cast< T >(start))) {}
开发者ID:Niko-r,项目名称:geofeatures,代码行数:3,


示例3: main1

static void main1(int argc, const char** argv){    print_g = true; // want to be able to see lprintfs    if (argc != 2)        Err("Usage: shapetostasm31 file.shape");    ShapeFile sh; // contents of the shape file    sh.Open_(argv[1]);    if (sh.shapes_[0].rows == 77)        lprintf("Converting 77 point to 76 point shapes/n");    char newpath[SLEN];    sprintf(newpath, "%s_stasm31.shape", Base(argv[1]));    lprintf("Generating %s ", newpath);    FILE* file = fopen(newpath, "wb");    if (!file)        Err("Cannot open %s for writing", newpath);    Fprintf(file, "ss %s/n/n", newpath);    Fprintf(file, "Directories %s/n/n", sh.dirs_);    Pacifier pacifier(sh.nshapes_);    for (int ishape = 0; ishape < sh.nshapes_; ishape++)    {        // we need the image width and height to convert the coords        const char* imgpath = PathGivenDirs(sh.bases_[ishape], sh.dirs_, sh.shapepath_);        cv::Mat_<unsigned char> img(cv::imread(imgpath, CV_LOAD_IMAGE_GRAYSCALE));        if (!img.data)            Err("Cannot load %s", imgpath);        Shape shape;        if (sh.shapes_[0].rows == 77)            shape = (ConvertShape(sh.shapes_[ishape], 76)); // convert 76 point shape        else            shape = sh.shapes_[ishape].clone();        CV_Assert(shape.rows);        Fprintf(file, "/"%4.4x %s/"/n",            NewBits(sh.bits_[ishape]), sh.bases_[ishape].c_str());        Fprintf(file, "{ %d %d/n", shape.rows, shape.cols);        const int cols2 = img.cols / 2;        const int rows2 = img.rows / 2;        for (int i = 0; i < shape.rows; i++)        {            if (!PointUsed(shape, i))                Fprintf(file, "0 0/n");            else            {                double oldx = shape(i, IX) - cols2;                double oldy = rows2 - shape(i, IY) - 1;                if (!PointUsed(oldx, oldy))                    oldx = XJITTER;                Print(file, oldx, " ");                Print(file, oldy, "/n");            }        }        Fprintf(file, "}/n");        pacifier.Print_(ishape);    }    pacifier.End_();    fclose(file);    lprintf("/n");}
开发者ID:Melevir,项目名称:stasm,代码行数:61,


示例4: test

void test(){  // This function tests C++0x 5.16  // p1 (contextually convert to bool)  int i1 = ToBool() ? 0 : 1;  // p2 (one or both void, and throwing)  i1 ? throw 0 : throw 1;  i1 ? test() : throw 1;  i1 ? throw 0 : test();  i1 ? test() : test();  i1 = i1 ? throw 0 : 0;  i1 = i1 ? 0 : throw 0;  i1 ? 0 : test(); // expected-error {{right operand to ? is void, but left operand is of type 'int'}}  i1 ? test() : 0; // expected-error {{left operand to ? is void, but right operand is of type 'int'}}  (i1 ? throw 0 : i1) = 0; // expected-error {{expression is not assignable}}  (i1 ? i1 : throw 0) = 0; // expected-error {{expression is not assignable}}  // p3 (one or both class type, convert to each other)  // b1 (lvalues)  Base base;  Derived derived;  Convertible conv;  Base &bar1 = i1 ? base : derived;  Base &bar2 = i1 ? derived : base;  Base &bar3 = i1 ? base : conv;  Base &bar4 = i1 ? conv : base;  // these are ambiguous  BadBase bb;  BadDerived bd;  (void)(i1 ? bb : bd); // expected-error {{conditional expression is ambiguous; 'struct BadBase' can be converted to 'struct BadDerived' and vice versa}}  (void)(i1 ? bd : bb); // expected-error {{conditional expression is ambiguous}}  // curiously enough (and a defect?), these are not  // for rvalues, hierarchy takes precedence over other conversions  (void)(i1 ? BadBase() : BadDerived());  (void)(i1 ? BadDerived() : BadBase());  // b2.1 (hierarchy stuff)  const Base constret();  const Derived constder();  // should use const overload  A a1((i1 ? constret() : Base()).trick());  A a2((i1 ? Base() : constret()).trick());  A a3((i1 ? constret() : Derived()).trick());  A a4((i1 ? Derived() : constret()).trick());  // should use non-const overload  i1 = (i1 ? Base() : Base()).trick();  i1 = (i1 ? Base() : Base()).trick();  i1 = (i1 ? Base() : Derived()).trick();  i1 = (i1 ? Derived() : Base()).trick();  // should fail: const lost  (void)(i1 ? Base() : constder()); // expected-error {{incompatible operand types ('struct Base' and 'struct Derived const')}}  (void)(i1 ? constder() : Base()); // expected-error {{incompatible operand types ('struct Derived const' and 'struct Base')}}  Priv priv;  Fin fin;  (void)(i1 ? Base() : Priv()); // expected-error{{private base class}}  (void)(i1 ? Priv() : Base()); // expected-error{{private base class}}  (void)(i1 ? Base() : Fin()); // expected-error{{ambiguous conversion from derived class 'struct Fin' to base class 'struct Base'}}  (void)(i1 ? Fin() : Base()); // expected-error{{ambiguous conversion from derived class 'struct Fin' to base class 'struct Base'}}  (void)(i1 ? base : priv); // expected-error {{private base class}}  (void)(i1 ? priv : base); // expected-error {{private base class}}  (void)(i1 ? base : fin); // expected-error {{ambiguous conversion from derived class 'struct Fin' to base class 'struct Base'}}  (void)(i1 ? fin : base); // expected-error {{ambiguous conversion from derived class 'struct Fin' to base class 'struct Base'}}  // b2.2 (non-hierarchy)  i1 = i1 ? I() : i1;  i1 = i1 ? i1 : I();  I i2(i1 ? I() : J());  I i3(i1 ? J() : I());  // "the type [it] woud have if E2 were converted to an rvalue"  vfn pfn = i1 ? F() : test;  pfn = i1 ? test : F();  (void)(i1 ? A() : B()); // expected-error {{conversion from 'struct B' to 'struct A' is ambiguous}}  (void)(i1 ? B() : A()); // expected-error {{conversion from 'struct B' to 'struct A' is ambiguous}}  (void)(i1 ? 1 : Ambig()); // expected-error {{conversion from 'struct Ambig' to 'int' is ambiguous}}  (void)(i1 ? Ambig() : 1); // expected-error {{conversion from 'struct Ambig' to 'int' is ambiguous}}  // By the way, this isn't an lvalue:  &(i1 ? i1 : i2); // expected-error {{address expression must be an lvalue or a function designator}}  // p4 (lvalue, same type)  Fields flds;  int &ir1 = i1 ? flds.i1 : flds.i2;  (i1 ? flds.b1 : flds.i2) = 0;  (i1 ? flds.i1 : flds.b2) = 0;  (i1 ? flds.b1 : flds.b2) = 0;  // p5 (conversion to built-in types)  // GCC 4.3 fails these  double d1 = i1 ? I() : K();  pfn = i1 ? F() : G();  DFnPtr pfm;  pfm = i1 ? DFnPtr() : &Base::fn1;  pfm = i1 ? &Base::fn1 : DFnPtr();  // p6 (final conversions)  i1 = i1 ? i1 : ir1;  int *pi1 = i1 ? &i1 : 0;  pi1 = i1 ? 0 : &i1;//.........这里部分代码省略.........
开发者ID:Gcrosby5269,项目名称:clamav-bytecode-compiler,代码行数:101,


示例5:

Line_d<R> Ray_d<R>::supporting_line() const{    return Line_d<R>(Base(*this));}
开发者ID:gitrider,项目名称:wxsj2,代码行数:4,


示例6: forward_sweep

size_t forward_sweep(	std::ostream&         s_out,	const bool            print,	const size_t          q,	const size_t          p,	const size_t          n,	const size_t          numvar,	player<Base>         *Rec,	const size_t          J,	Base                 *Taylor,	CppAD::vector<bool>&  cskip_op){	CPPAD_ASSERT_UNKNOWN( J >= p + 1 );	CPPAD_ASSERT_UNKNOWN( q <= p );	// op code for current instruction	OpCode           op;	// index for current instruction	size_t         i_op;	// next variables 	size_t        i_var;	// arg (not as a constant)	addr_t*         non_const_arg = CPPAD_NULL;	// arg (as a constant)	const addr_t*   arg = CPPAD_NULL;	// temporary indices	size_t i, ell;	// initialize the comparision operator (ComOp) counter	size_t compareCount = 0;	pod_vector<size_t> VectorInd;  // address for each element	pod_vector<bool>   VectorVar;  // is element a variable	if( q == 0 )	{		// this includes order zero calculation, initialize vector indices		i = Rec->num_rec_vecad_ind();		if( i > 0 )		{	VectorInd.extend(i);			VectorVar.extend(i);			while(i--)			{	VectorInd[i] = Rec->GetVecInd(i);				VectorVar[i] = false;			}		}		// includes zero order, so initialize conditional skip flags		for(i = 0; i < Rec->num_rec_op(); i++)			cskip_op[i] = false;	}	// Work space used by UserOp. Note User assumes q = p.	const size_t user_p1 = p+1;  // number of orders for this user calculation	vector<bool> user_vx;        // empty vector	vector<bool> user_vy;        // empty vector	vector<Base> user_tx;        // argument vector Taylor coefficients 	vector<Base> user_ty;        // result vector Taylor coefficients 	vector<size_t> user_iy;      // variable indices for results vector	size_t user_index = 0;       // indentifier for this atomic operation	size_t user_id    = 0;       // user identifier for this call to operator	size_t user_i     = 0;       // index in result vector	size_t user_j     = 0;       // index in argument vector	size_t user_m     = 0;       // size of result vector	size_t user_n     = 0;       // size of arugment vector	//	atomic_base<Base>* user_atom = CPPAD_NULL; // user's atomic op calculator# ifndef NDEBUG	bool               user_ok   = false;      // atomic op return value# endif	//	// next expected operator in a UserOp sequence	enum { user_start, user_arg, user_ret, user_end } user_state = user_start;	// check numvar argument	CPPAD_ASSERT_UNKNOWN( Rec->num_rec_var() == numvar );	// length of the parameter vector (used by CppAD assert macros)	const size_t num_par = Rec->num_rec_par();	// pointer to the beginning of the parameter vector	const Base* parameter = CPPAD_NULL;	if( num_par > 0 )		parameter = Rec->GetPar();	// length of the text vector (used by CppAD assert macros)	const size_t num_text = Rec->num_rec_text();	// pointer to the beginning of the text vector	const char* text = CPPAD_NULL;	if( num_text > 0 )		text = Rec->GetTxt(0);	// skip the BeginOp at the beginning of the recording	Rec->start_forward(op, arg, i_op, i_var);	CPPAD_ASSERT_UNKNOWN( op == BeginOp );# if CPPAD_FORWARD_SWEEP_TRACE//.........这里部分代码省略.........
开发者ID:tkelman,项目名称:CppAD-oldmirror,代码行数:101,


示例7: log10

 inline AD<Base> log10(const VecAD_reference<Base> &x) {    return CppAD::log(x.ADBase()) / CppAD::log( Base(10) ); }
开发者ID:ZiiCee,项目名称:OPTI,代码行数:2,


示例8: reverse_acos_op

inline void reverse_acos_op(	size_t      d            ,	size_t      i_z          ,	size_t      i_x          ,	size_t      cap_order    ,	const Base* taylor       ,	size_t      nc_partial   ,	Base*       partial      ){	// check assumptions	CPPAD_ASSERT_UNKNOWN( NumArg(AcosOp) == 1 );	CPPAD_ASSERT_UNKNOWN( NumRes(AcosOp) == 2 );	CPPAD_ASSERT_UNKNOWN( d < cap_order );	CPPAD_ASSERT_UNKNOWN( d < nc_partial );	// Taylor coefficients and partials corresponding to argument	const Base* x  = taylor  + i_x * cap_order;	Base* px       = partial + i_x * nc_partial;	// Taylor coefficients and partials corresponding to first result	const Base* z  = taylor  + i_z * cap_order;	Base* pz       = partial + i_z * nc_partial;	// Taylor coefficients and partials corresponding to auxillary result	const Base* b  = z  - cap_order; // called y in documentation	Base* pb       = pz - nc_partial;	// If pz is zero, make sure this operation has no effect	// (zero times infinity or nan would be non-zero).	bool skip(true);	for(size_t i_d = 0; i_d <= d; i_d++)		skip &= IdenticalZero(pz[i_d]);	if( skip )		return;	// number of indices to access	size_t j = d;	size_t k;	while(j)	{		// scale partials w.r.t b[j] by 1 / b[0]		pb[j] /= b[0];		// scale partials w.r.t z[j] by 1 / b[0]		pz[j] /= b[0];		// update partials w.r.t b^0		pb[0] -= pz[j] * z[j] + pb[j] * b[j];		// update partial w.r.t. x^0		px[0] -= pb[j] * x[j];		// update partial w.r.t. x^j		px[j] -= pz[j] + pb[j] * x[0];		// further scale partial w.r.t. z[j] by 1 / j		pz[j] /= Base(j);		for(k = 1; k < j; k++)		{	// update partials w.r.t b^(j-k)			pb[j-k] -= Base(k) * pz[j] * z[k] + pb[j] * b[k];			// update partials w.r.t. x^k			px[k]   -= pb[j] * x[j-k];			// update partials w.r.t. z^k			pz[k]   -= pz[j] * Base(k) * b[j-k];		}		--j;	}	// j == 0 case	px[0] -= ( pz[0] + pb[0] * x[0]) / b[0];}
开发者ID:GodinA,项目名称:adcomp,代码行数:74,


示例9: Domain

VectorBase ADFun<Base>::ForTwo(	const VectorBase   &x, 	const VectorSize_t &j,	const VectorSize_t &k){	size_t i;	size_t j1;	size_t k1;	size_t l;	size_t n = Domain();	size_t m = Range();	size_t p = j.size();	// check VectorBase is Simple Vector class with Base type elements	CheckSimpleVector<Base, VectorBase>();	// check VectorSize_t is Simple Vector class with size_t elements	CheckSimpleVector<size_t, VectorSize_t>();	CPPAD_ASSERT_KNOWN(		x.size() == n,		"ForTwo: Length of x not equal domain dimension for f."	); 	CPPAD_ASSERT_KNOWN(		j.size() == k.size(),		"ForTwo: Lenght of the j and k vectors are not equal."	);	// point at which we are evaluating the second partials	Forward(0, x);	// dimension the return value	VectorBase ddy(m * p);	// allocate memory to hold all possible diagonal Taylor coefficients	// (for large sparse cases, this is not efficient)	VectorBase D(m * n);	// boolean flag for which diagonal coefficients are computed	CppAD::vector<bool> c(n);	for(j1 = 0; j1 < n; j1++)		c[j1] = false;	// direction vector in argument space	VectorBase dx(n);	for(j1 = 0; j1 < n; j1++)		dx[j1] = Base(0);	// result vector in range space	VectorBase dy(m);	// compute the diagonal coefficients that are needed	for(l = 0; l < p; l++)	{	j1 = j[l];		k1 = k[l];		CPPAD_ASSERT_KNOWN(		j1 < n,		"ForTwo: an element of j not less than domain dimension for f."		);		CPPAD_ASSERT_KNOWN(		k1 < n,		"ForTwo: an element of k not less than domain dimension for f."		);		size_t count = 2;		while(count)		{	count--;			if( ! c[j1] )			{	// diagonal term in j1 direction				c[j1]  = true;				dx[j1] = Base(1);				Forward(1, dx);				dx[j1] = Base(0);				dy     = Forward(2, dx);				for(i = 0; i < m; i++)					D[i * n + j1 ] = dy[i];			} 			j1 = k1;		}	}	// compute all the requested cross partials	for(l = 0; l < p; l++)	{	j1 = j[l];		k1 = k[l];		if( j1 == k1 )		{	for(i = 0; i < m; i++)				ddy[i * p + l] = Base(2) * D[i * n + j1];		}		else		{			// cross term in j1 and k1 directions			dx[j1] = Base(1);			dx[k1] = Base(1);			Forward(1, dx);			dx[j1] = Base(0);			dx[k1] = Base(0);			dy = Forward(2, dx);			// place result in return value//.........这里部分代码省略.........
开发者ID:cran,项目名称:SpeciesMix,代码行数:101,


示例10: ProcessFace

static void ProcessFace(    const Image&     img,            // in    const char*      imgpath,        // in    int              foundface,      // in    const Shape&     shape,          // in    float            estyaw,         // in    double           facedet_time,   // in    double           asmsearch_time, // in    const Shape&     refshape,       // in    FILE*            fitfile,        // in    const ShapeFile& sh,             // in    int              ishape)         // in: shape index in the shapefile{    double meanfit = NOFIT; // fitness measure over all shapefile points    int iworst = -1;        // worst fitting point in above measure of fitness    double me17 = NOFIT;    // fitness measure me17    double fm29 = NOFIT;    // fitness measure FM29 (only for 77 point shapes)    int iworst_fm29 = -1;   // worst fitting point using FM29 measure    if (!foundface)        printf_g("no face ");    else    {        if (trace_g)            LogShape(shape, imgpath);        // we will succesfully get the meanfit only if the shape can be converted to        // the shapefile number of points (by ConvertShape in MeanFitOverInterEye)        meanfit = MeanFitOverInterEye(iworst, shape, refshape);        if (meanfit != NOFIT) // were able to get the mean fit?            printf_g("meanfit %5.3f ", meanfit);        // use fitness measure me17 if can convert the shape to a shape17        me17 = Me17(shape, refshape);        if (me17 != NOFIT) // were able to get the me17 fit?            printf_g("me17 %5.3f ", me17);        // get fitness measure fm29 if the shape has 77 points        if (shape.rows == 77 && refshape.rows == 77)        {            Fm29(fm29, iworst_fm29, shape, refshape);            printf_g("fm29 %5.3f ", fm29);        }        if (writeimgs_g) // -i flag            WriteImgs(img, imgpath, shape, refshape,                      meanfit, iworst, me17, fm29, iworst_fm29);    }    printf_g("/n");    if (trace_g)        lprintf("/n");    const char* const base = Base(imgpath);    const VEC pose(sh.Pose_(base));    Fprintf(fitfile,        "%-*s%s "        "%7.5f % 6d "        "%7.5f "        "%7.5f     % 6d "        "%8.2f %8.2f  ",        sh.nchar_, base, " ",        meanfit, iworst,        me17,        fm29, iworst_fm29,        InterEyeDist(refshape), EyeMouthDist(refshape));    Fprintf(fitfile,        "% 5.0f "        "% 6.0f % 6.0f % 6.0f %9.3f "        "[%5.3f] [%5.3f]/n",        estyaw,        pose(0), pose(1), pose(2), pose(3),        facedet_time, asmsearch_time);}
开发者ID:avtomaton,项目名称:stasm,代码行数:67,


示例11: forward_sweep

size_t forward_sweep(	bool                  print,	size_t                d,	size_t                n,	size_t                numvar,	player<Base>         *Rec,	size_t                J,	Base                 *Taylor){	CPPAD_ASSERT_UNKNOWN( J >= d + 1 );	// op code for current instruction	OpCode           op;	// index for current instruction	size_t         i_op;	// next variables 	size_t        i_var;# if CPPAD_USE_FORWARD0SWEEP	CPPAD_ASSERT_UNKNOWN( d > 0 );# else	size_t*         non_const_arg;# endif	const size_t   *arg = 0;	size_t            i;	// initialize the comparision operator (ComOp) counter	size_t compareCount = 0;	// if this is an order zero calculation, initialize vector indices	size_t *VectorInd = CPPAD_NULL;  // address for each element	bool   *VectorVar = CPPAD_NULL;  // is element a variable	i = Rec->num_rec_vecad_ind();	if( i > 0 )	{	VectorInd = CPPAD_TRACK_NEW_VEC(i, VectorInd);		VectorVar = CPPAD_TRACK_NEW_VEC(i, VectorVar);		while(i--)		{	VectorInd[i] = Rec->GetVecInd(i);			VectorVar[i] = false;		}	}	// check numvar argument	CPPAD_ASSERT_UNKNOWN( Rec->num_rec_var() == numvar );	// length of the parameter vector (used by CppAD assert macros)	const size_t num_par = Rec->num_rec_par();	// length of the text vector (used by CppAD assert macros)	const size_t num_text = Rec->num_rec_text();	// pointer to the beginning of the parameter vector	const Base* parameter = 0;	if( num_par > 0 )		parameter = Rec->GetPar();	// pointer to the beginning of the text vector	const char* text = 0;	if( num_text > 0 )		text = Rec->GetTxt(0);		// skip the BeginOp at the beginning of the recording	Rec->start_forward(op, arg, i_op, i_var);	CPPAD_ASSERT_UNKNOWN( op == BeginOp );# if CPPAD_FORWARD_SWEEP_TRACE	std::cout << std::endl;# endif	while(op != EndOp)	{		// this op		Rec->next_forward(op, arg, i_op, i_var);		CPPAD_ASSERT_UNKNOWN( (i_op > n)  | (op == InvOp) );  		CPPAD_ASSERT_UNKNOWN( (i_op <= n) | (op != InvOp) );  		// action depends on the operator		switch( op )		{			case AbsOp:			forward_abs_op(d, i_var, arg[0], J, Taylor);			break;			// -------------------------------------------------			case AddvvOp:			forward_addvv_op(d, i_var, arg, parameter, J, Taylor);			break;			// -------------------------------------------------			case AddpvOp:			CPPAD_ASSERT_UNKNOWN( arg[0] < num_par );			forward_addpv_op(d, i_var, arg, parameter, J, Taylor);			break;			// -------------------------------------------------			case AcosOp:			// variables: sqrt(1 - x * x), acos(x) 			CPPAD_ASSERT_UNKNOWN( i_var < numvar  );//.........这里部分代码省略.........
开发者ID:jnorthrup,项目名称:jmodelica,代码行数:101,


示例12: sizeof

uint8ArchUART8250Omap::In8(int reg){	return *((uint8 *)Base() + reg * sizeof(uint32));}
开发者ID:looncraz,项目名称:haiku,代码行数:5,


示例13:

voidArchUART8250Omap::Out8(int reg, uint8 value){	*((uint8 *)Base() + reg * sizeof(uint32)) = value;}
开发者ID:looncraz,项目名称:haiku,代码行数:5,


示例14: Base

inline AD<Base>& AD<Base>::operator=(const T &t){	return *this = Base(t); }
开发者ID:AndreasBrack,项目名称:WahlkreisSeminar,代码行数:2,


示例15: xml_unescape

 xml_unescape(T start) :     super_t(Base(static_cast< T >(start))) {}
开发者ID:marops,项目名称:PDAL,代码行数:3,


示例16: TellMaxPut

//-----------------------------------------------------------------------------// Converts a buffer from a CRLF buffer to a CR buffer (and back)// Returns false if no conversion was necessary (and outBuf is left untouched)// If the conversion occurs, outBuf will be cleared.//-----------------------------------------------------------------------------bool CUtlBufferEditor::ConvertCRLF( CUtlBufferEditor &outBuf ){	if ( !IsText() || !outBuf.IsText() )		return false;	if ( ContainsCRLF() == outBuf.ContainsCRLF() )		return false;	int nInCount = TellMaxPut();	outBuf.Purge();	outBuf.EnsureCapacity( nInCount );	bool bFromCRLF = ContainsCRLF();	// Start reading from the beginning	int nGet = TellGet();	int nPut = TellPut();	int nGetDelta = 0;	int nPutDelta = 0;	const char *pBase = (const char*)Base();	int nCurrGet = 0;	while ( nCurrGet < nInCount )	{		const char *pCurr = &pBase[nCurrGet];		if ( bFromCRLF )		{			const char *pNext = Q_strnistr( pCurr, "/r/n", nInCount - nCurrGet );			if ( !pNext )			{				outBuf.Put( pCurr, nInCount - nCurrGet );				break;			}			int nBytes = (size_t)pNext - (size_t)pCurr;			outBuf.Put( pCurr, nBytes );			outBuf.PutChar( '/n' );			nCurrGet += nBytes + 2;			if ( nGet >= nCurrGet - 1 )			{				--nGetDelta;			}			if ( nPut >= nCurrGet - 1 )			{				--nPutDelta;			}		}		else		{			const char *pNext = Q_strnchr( pCurr, '/n', nInCount - nCurrGet );			if ( !pNext )			{				outBuf.Put( pCurr, nInCount - nCurrGet );				break;			}			int nBytes = (size_t)pNext - (size_t)pCurr;			outBuf.Put( pCurr, nBytes );			outBuf.PutChar( '/r' );			outBuf.PutChar( '/n' );			nCurrGet += nBytes + 1;			if ( nGet >= nCurrGet )			{				++nGetDelta;			}			if ( nPut >= nCurrGet )			{				++nPutDelta;			}		}	}	Assert(	nPut + nPutDelta <= outBuf.TellMaxPut() );	outBuf.SeekGet( SEEK_HEAD, nGet + nGetDelta ); 	outBuf.SeekPut( SEEK_HEAD, nPut + nPutDelta ); 	return true;}
开发者ID:BSVino,项目名称:source-shader-editor,代码行数:85,


示例17: main

int main(){    Base()->operator=(Base());}
开发者ID:WhiZTiM,项目名称:coliru,代码行数:4,


示例18: TellPut

void CUtlBufferEditor::WriteToBuffer( CUtlBuffer &buf ){	int size = TellPut();	buf.Put( Base(), size );}
开发者ID:BSVino,项目名称:source-shader-editor,代码行数:6,


示例19: forward2sweep

void forward2sweep(	const size_t                q,	const size_t                r,	const size_t                n,	const size_t                numvar,	      player<Base>*         play,	const size_t                J,	      Base*                 taylor,	const bool*                 cskip_op,	const pod_vector<addr_t>&   var_by_load_op){	CPPAD_ASSERT_UNKNOWN( q > 0 );	CPPAD_ASSERT_UNKNOWN( J >= q + 1 );	CPPAD_ASSERT_UNKNOWN( play->num_var_rec() == numvar );	// used to avoid compiler errors until all operators are implemented	size_t p = q;	// op code for current instruction	OpCode op;	// index for current instruction	size_t i_op;	// next variables	size_t i_var;	// operation argument indices	const addr_t*   arg = CPPAD_NULL;	// work space used by UserOp.	vector<bool> user_vx;        // empty vecotor	vector<bool> user_vy;        // empty vecotor	vector<Base> user_tx_one;    // argument vector Taylor coefficients	vector<Base> user_tx_all;	vector<Base> user_ty_one;    // result vector Taylor coefficients	vector<Base> user_ty_all;	size_t user_index = 0;       // indentifier for this atomic operation	size_t user_id    = 0;       // user identifier for this call to operator	size_t user_i     = 0;       // index in result vector	size_t user_j     = 0;       // index in argument vector	size_t user_m     = 0;       // size of result vector	size_t user_n     = 0;       // size of arugment vector	//	atomic_base<Base>* user_atom = CPPAD_NULL; // user's atomic op calculator# ifndef NDEBUG	bool               user_ok   = false;      // atomic op return value# endif	//	// next expected operator in a UserOp sequence	enum { user_start, user_arg, user_ret, user_end, user_trace }	user_state = user_start;	// length of the parameter vector (used by CppAD assert macros)	const size_t num_par = play->num_par_rec();	// pointer to the beginning of the parameter vector	const Base* parameter = CPPAD_NULL;	if( num_par > 0 )		parameter = play->GetPar();	// temporary indices	size_t i, j, k, ell;	// number of orders for this user calculation	// (not needed for order zero)	const size_t user_q1 = q+1;	// variable indices for results vector	// (done differently for order zero).	vector<size_t> user_iy;	// skip the BeginOp at the beginning of the recording	play->forward_start(op, arg, i_op, i_var);	CPPAD_ASSERT_UNKNOWN( op == BeginOp );# if CPPAD_FORWARD2SWEEP_TRACE	std::cout << std::endl;	CppAD::vector<Base> Z_vec(q+1);# endif	bool more_operators = true;	while(more_operators)	{		// this op		play->forward_next(op, arg, i_op, i_var);		CPPAD_ASSERT_UNKNOWN( (i_op > n)  | (op == InvOp) );		CPPAD_ASSERT_UNKNOWN( (i_op <= n) | (op != InvOp) );		CPPAD_ASSERT_UNKNOWN( i_op < play->num_op_rec() );		CPPAD_ASSERT_ARG_BEFORE_RESULT(op, arg, i_var);		// check if we are skipping this operation		while( cskip_op[i_op] )		{	if( op == CSumOp )			{	// CSumOp has a variable number of arguments				play->forward_csum(op, arg, i_op, i_var);			}			CPPAD_ASSERT_UNKNOWN( op != CSkipOp );			// if( op == CSkipOp )			// {	// CSkip has a variable number of arguments			// 	play->forward_cskip(op, arg, i_op, i_var);//.........这里部分代码省略.........
开发者ID:CSCsw,项目名称:CppAD,代码行数:101,


示例20: forward1sweep

void forward1sweep(	std::ostream&         s_out,	const bool            print,	const size_t          p,	const size_t          q,	const size_t          n,	const size_t          numvar,	player<Base>*         play,	const size_t          J,	Base*                 taylor,	bool*                 cskip_op,	pod_vector<addr_t>&   var_by_load_op,	size_t                compare_change_count,	size_t&               compare_change_number,	size_t&               compare_change_op_index){	// number of directions	const size_t r = 1;	CPPAD_ASSERT_UNKNOWN( p <= q );	CPPAD_ASSERT_UNKNOWN( J >= q + 1 );	CPPAD_ASSERT_UNKNOWN( play->num_var_rec() == numvar );	/*	<!-- replace forward0sweep_code_define -->	*/	// op code for current instruction	OpCode op;	// index for current instruction	size_t i_op;	// next variables 	size_t i_var;	// operation argument indices	const addr_t*   arg = CPPAD_NULL;	// initialize the comparision operator counter	if( p == 0 )	{	compare_change_number   = 0;		compare_change_op_index = 0;	}	// If this includes a zero calculation, initialize this information	pod_vector<bool>   isvar_by_ind;	pod_vector<size_t> index_by_ind;	if( p == 0 )	{	size_t i;		// this includes order zero calculation, initialize vector indices		size_t num = play->num_vec_ind_rec();		if( num > 0 )		{	isvar_by_ind.extend(num);			index_by_ind.extend(num);			for(i = 0; i < num; i++)			{	index_by_ind[i] = play->GetVecInd(i);				isvar_by_ind[i] = false;			}		}		// includes zero order, so initialize conditional skip flags		num = play->num_op_rec();		for(i = 0; i < num; i++)			cskip_op[i] = false;	}	// work space used by UserOp.	vector<bool> user_vx;        // empty vecotor	vector<bool> user_vy;        // empty vecotor	vector<Base> user_tx;        // argument vector Taylor coefficients 	vector<Base> user_ty;        // result vector Taylor coefficients 	size_t user_index = 0;       // indentifier for this atomic operation	size_t user_id    = 0;       // user identifier for this call to operator	size_t user_i     = 0;       // index in result vector	size_t user_j     = 0;       // index in argument vector	size_t user_m     = 0;       // size of result vector	size_t user_n     = 0;       // size of arugment vector	//	atomic_base<Base>* user_atom = CPPAD_NULL; // user's atomic op calculator# ifndef NDEBUG	bool               user_ok   = false;      // atomic op return value# endif	//	// next expected operator in a UserOp sequence	enum { user_start, user_arg, user_ret, user_end, user_trace }	user_state = user_start;	// length of the parameter vector (used by CppAD assert macros)	const size_t num_par = play->num_par_rec();	// pointer to the beginning of the parameter vector	const Base* parameter = CPPAD_NULL;	if( num_par > 0 )		parameter = play->GetPar();	// length of the text vector (used by CppAD assert macros)	const size_t num_text = play->num_text_rec();	// pointer to the beginning of the text vector//.........这里部分代码省略.........
开发者ID:GodinA,项目名称:adcomp,代码行数:101,


示例21: GetPreviewBackgroundColor

void FCascadeEdPreviewViewportClient::Draw(FViewport* Viewport, FCanvas* Canvas){	if (!CascadePtr.IsValid())	{		return;	}	Canvas->Clear( GetPreviewBackgroundColor());	// Clear out the lines from the previous frame	CascadePreviewScene.ClearLineBatcher();	ULineBatchComponent* LineBatcher = CascadePreviewScene.GetLineBatcher();	CascadePreviewScene.RemoveComponent(LineBatcher);	const FVector XAxis(1,0,0); 	const FVector YAxis(0,1,0); 	const FVector ZAxis(0,0,1);	if (GetDrawElement(OriginAxis))	{		FMatrix ArrowMatrix = FMatrix(XAxis, YAxis, ZAxis, FVector::ZeroVector);		LineBatcher->DrawDirectionalArrow(ArrowMatrix, FColorList::Red, 10.f, 1.0f, SDPG_World);		ArrowMatrix = FMatrix(YAxis, ZAxis, XAxis, FVector::ZeroVector);		LineBatcher->DrawDirectionalArrow(ArrowMatrix, FColorList::Green, 10.f, 1.0f, SDPG_World);		ArrowMatrix = FMatrix(ZAxis, XAxis, YAxis, FVector::ZeroVector);		LineBatcher->DrawDirectionalArrow(ArrowMatrix, FColorList::Blue, 10.f, 1.0f, SDPG_World);	}	if (GetDrawElement(WireSphere))	{		FVector Base(0.f);		FColor WireColor = FColor::Red;		const int32 NumRings = 16;		const float RotatorMultiplier = 360.f / NumRings;		const int32 NumSides = 32;		for (int32 i = 0; i < NumRings; i++)		{			FVector RotXAxis;			FVector RotYAxis;			FVector RotZAxis;			FRotationMatrix RotMatrix(FRotator(i * RotatorMultiplier, 0, 0));			RotXAxis = RotMatrix.TransformPosition(XAxis);			RotYAxis = RotMatrix.TransformPosition(YAxis);			RotZAxis = RotMatrix.TransformPosition(ZAxis);			LineBatcher->DrawCircle(Base, RotXAxis, RotYAxis, WireColor, WireSphereRadius, NumSides, SDPG_World);			LineBatcher->DrawCircle(Base, RotXAxis, RotZAxis, WireColor, WireSphereRadius, NumSides, SDPG_World);			LineBatcher->DrawCircle(Base, RotYAxis, RotZAxis, WireColor, WireSphereRadius, NumSides, SDPG_World);			RotMatrix = FRotationMatrix(FRotator(0, i * RotatorMultiplier, 0));			RotXAxis = RotMatrix.TransformPosition(XAxis);			RotYAxis = RotMatrix.TransformPosition(YAxis);			RotZAxis = RotMatrix.TransformPosition(ZAxis);			LineBatcher->DrawCircle(Base, RotXAxis, RotYAxis, WireColor, WireSphereRadius, NumSides, SDPG_World);			LineBatcher->DrawCircle(Base, RotXAxis, RotZAxis, WireColor, WireSphereRadius, NumSides, SDPG_World);			LineBatcher->DrawCircle(Base, RotYAxis, RotZAxis, WireColor, WireSphereRadius, NumSides, SDPG_World);		}	}	FEngineShowFlags SavedEngineShowFlags = EngineShowFlags;	if (GetDrawElement(Bounds))	{		EngineShowFlags.SetBounds(true);		EngineShowFlags.Game = 1;	}	EngineShowFlags.SetVectorFields(GetDrawElement(VectorFields));	CascadePreviewScene.AddComponent(LineBatcher,FTransform::Identity);	FEditorViewportClient::Draw(Viewport, Canvas);	EngineShowFlags = SavedEngineShowFlags;	FCanvasTextItem TextItem( FVector2D::ZeroVector, FText::GetEmpty(), GEngine->GetTinyFont(), FLinearColor::White );	if (GetDrawElement(ParticleCounts) || GetDrawElement(ParticleTimes) || GetDrawElement(ParticleEvents) || GetDrawElement(ParticleMemory) || GetDrawElement(ParticleSystemCompleted))	{		// 'Up' from the lower left...		FString strOutput;		const int32 XPosition = Viewport->GetSizeXY().X - 5;		int32 YPosition = Viewport->GetSizeXY().Y - (GetDrawElement(ParticleMemory) ? 15 : 5);		UParticleSystemComponent* PartComp = CascadePtr.Pin()->GetParticleSystemComponent();		int32 iWidth, iHeight;		if (PartComp->EmitterInstances.Num())		{			for (int32 i = 0; i < PartComp->EmitterInstances.Num(); i++)			{				FParticleEmitterInstance* Instance = PartComp->EmitterInstances[i];				if (!Instance || !Instance->SpriteTemplate)				{					continue;				}				UParticleLODLevel* LODLevel = Instance->SpriteTemplate->GetCurrentLODLevel(Instance);//.........这里部分代码省略.........
开发者ID:JustDo1989,项目名称:UnrealEngine4.11-HairWorks,代码行数:101,


示例22: CGAL_assertion_msg

Line_d<R> Segment_d<R>::supporting_line() const{   CGAL_assertion_msg((!is_degenerate()),                       "Segment_d::supporting_line(): degenerate segment cannot be converted.");    return Line_d<R>(Base(*this));}
开发者ID:gitrider,项目名称:wxsj2,代码行数:5,


示例23: head_iterator

 head_iterator(Predicate f, T start) :      super_t(Base(start)),      m_predicate(f),     m_end(false) {}
开发者ID:AndresGalaviz,项目名称:NAO,代码行数:5,


示例24: TDerived

 TDerived() { Base(); }
开发者ID:GameFusion,项目名称:clang-tools-extra,代码行数:1,


示例25: binary_from_base64

 // intel 7.1 doesn't like default copy constructor binary_from_base64(const binary_from_base64 & rhs) :      super_t(         Base(rhs.base_reference()),         detail::to_6_bit<CharType>()     ) {}
开发者ID:ANCL,项目名称:autopilot,代码行数:7,


示例26: reverse_acosh_op

inline void reverse_acosh_op(	size_t      d            ,	size_t      i_z          ,	size_t      i_x          ,	size_t      cap_order    ,	const Base* taylor       ,	size_t      nc_partial   ,	Base*       partial      ){	// check assumptions	CPPAD_ASSERT_UNKNOWN( NumArg(AcoshOp) == 1 );	CPPAD_ASSERT_UNKNOWN( NumRes(AcoshOp) == 2 );	CPPAD_ASSERT_UNKNOWN( d < cap_order );	CPPAD_ASSERT_UNKNOWN( d < nc_partial );	// Taylor coefficients and partials corresponding to argument	const Base* x  = taylor  + i_x * cap_order;	Base* px       = partial + i_x * nc_partial;	// Taylor coefficients and partials corresponding to first result	const Base* z  = taylor  + i_z * cap_order;	Base* pz       = partial + i_z * nc_partial;	// Taylor coefficients and partials corresponding to auxillary result	const Base* b  = z  - cap_order; // called y in documentation	Base* pb       = pz - nc_partial;	Base inv_b0 = Base(1) / b[0];	// number of indices to access	size_t j = d;	size_t k;	while(j)	{		// scale partials w.r.t b[j] by 1 / b[0]		pb[j]  = azmul(pb[j], inv_b0);		// scale partials w.r.t z[j] by 1 / b[0]		pz[j]  = azmul(pz[j], inv_b0);		// update partials w.r.t b^0		pb[0] -= azmul(pz[j], z[j]) + azmul(pb[j], b[j]);		// update partial w.r.t. x^0		px[0] += azmul(pb[j], x[j]);		// update partial w.r.t. x^j		px[j] += pz[j] + azmul(pb[j], x[0]);		// further scale partial w.r.t. z[j] by 1 / j		pz[j] /= Base(j);		for(k = 1; k < j; k++)		{	// update partials w.r.t b^(j-k)			pb[j-k] -= Base(k) * azmul(pz[j], z[k]) + azmul(pb[j], b[k]);			// update partials w.r.t. x^k			px[k]   += azmul(pb[j], x[j-k]);			// update partials w.r.t. z^k			pz[k]   -= Base(k) * azmul(pz[j], b[j-k]);		}		--j;	}	// j == 0 case	px[0] += azmul(pz[0] + azmul(pb[0], x[0]),  inv_b0);}
开发者ID:fduffy,项目名称:CppAD,代码行数:68,


示例27:

VectorCd<FT,LA> PointCd<FT,LA>::operator-(const Origin&) const { return VectorCd<FT,LA>(Base(*this)); }
开发者ID:dodong471520,项目名称:pap,代码行数:2,


示例28: mb_from_wchar

        m_bnext = 0;        ++(this->base_reference());        m_full = false;    }    // buffer to handle pending characters    int m_bend;    int m_bnext;    char m_buffer[9];    bool m_full;public:    // make composible buy using templated constructor    template<class T>    mb_from_wchar(BOOST_PFTO_WRAPPER(T) start) :        super_t(Base(BOOST_MAKE_PFTO_WRAPPER(static_cast< T >(start)))),        m_bend(0),        m_bnext(0),        m_full(false)    {}    // intel 7.1 doesn't like default copy constructor    mb_from_wchar(const mb_from_wchar & rhs) :         super_t(rhs.base_reference()),        m_bend(rhs.m_bend),        m_bnext(rhs.m_bnext),        m_full(rhs.m_full)    {}};} // namespace iterators} // namespace archive
开发者ID:ALuehmann,项目名称:labstreaminglayer,代码行数:31,


示例29: Domain

VectorBase ADFun<Base>::RevTwo(    const VectorBase   &x,    const VectorSize_t &i,    const VectorSize_t &j){   size_t i1;    size_t j1;    size_t k;    size_t l;    size_t n = Domain();    size_t m = Range();    size_t p = i.size();    // check VectorBase is Simple Vector class with Base elements    CheckSimpleVector<Base, VectorBase>();    // check VectorSize_t is Simple Vector class with size_t elements    CheckSimpleVector<size_t, VectorSize_t>();    CPPAD_ASSERT_KNOWN(        x.size() == n,        "RevTwo: Length of x not equal domain dimension for f."    );    CPPAD_ASSERT_KNOWN(        i.size() == j.size(),        "RevTwo: Lenght of the i and j vectors are not equal."    );    // point at which we are evaluating the second partials    Forward(0, x);    // dimension the return value    VectorBase ddw(n * p);    // direction vector in argument space    VectorBase dx(n);    for(j1 = 0; j1 < n; j1++)        dx[j1] = Base(0);    // direction vector in range space    VectorBase w(m);    for(i1 = 0; i1 < m; i1++)        w[i1] = Base(0);    // place to hold the results of a reverse calculation    VectorBase r(n * 2);    // check the indices in i and j    for(l = 0; l < p; l++)    {   i1 = i[l];        j1 = j[l];        CPPAD_ASSERT_KNOWN(            i1 < m,            "RevTwo: an eleemnt of i not less than range dimension for f."        );        CPPAD_ASSERT_KNOWN(            j1 < n,            "RevTwo: an element of j not less than domain dimension for f."        );    }    // loop over all forward directions    for(j1 = 0; j1 < n; j1++)    {   // first order forward mode calculation done        bool first_done = false;        for(l = 0; l < p; l++) if( j[l] == j1 )            {   if( ! first_done )                {   first_done = true;                    // first order forward mode in j1 direction                    dx[j1] = Base(1);                    Forward(1, dx);                    dx[j1] = Base(0);                }                // execute a reverse in this component direction                i1    = i[l];                w[i1] = Base(1);                r     = Reverse(2, w);                w[i1] = Base(0);                // place the reverse result in return value                for(k = 0; k < n; k++)                    ddw[k * p + l] = r[k * 2 + 1];            }    }    return ddw;}
开发者ID:barak,项目名称:CppAD-1,代码行数:86,



注:本文中的Base函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ Base64Encode函数代码示例
C++ BarUiMsg函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。