本文整理汇总了C++中ret函数的典型用法代码示例。如果您正苦于以下问题:C++ ret函数的具体用法?C++ ret怎么用?C++ ret使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ret函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: f_timezone_open
Object f_timezone_open(const String& timezone) {
c_DateTimeZone *ctz = NEWOBJ(c_DateTimeZone)();
Object ret(ctz);
ctz->t___construct(timezone);
return ret;
}
开发者ID:TSMG1972,项目名称:hhvm,代码行数:6,代码来源:ext_datetime.cpp
示例2: startElement
void startElement(const XMLCh* const uri, const XMLCh* const localnameXML, const XMLCh* const qname, const Attributes& attrs)
{
if (localnameXML[0] == OSM::szNODE[0]) /* node*/ {
if (localnameXML[1] == OSM::szNODE[1]) /* node */ {
if (XMLString::equals(localnameXML,OSM::szNODE)) /* node*/ {
pCur=&node;
node.startNodeElement(uri,localnameXML,qname, attrs);
}
else
{
char * val = XMLString::transcode(localnameXML);
string ret(val); // hack it!
XMLString::release(&val); // dont forget forget to delete !
cerr << "ERRO:Unknown name:" << ret << "\n";
}
}// end of no
else
if (localnameXML[1] == OSM::szND[1]) // way/nd
{
way.startND(uri,localnameXML,qname, attrs);
}
else
{
cerr << "Unknown Node Name:" << localnameXML<< "\n";
}
}// end of n
else if (localnameXML[0] == OSM::szWAY[0]) {
if (XMLString::equals(localnameXML,OSM::szWAY)) /* way*/ {
pCur=&way;
way.startWayElement(uri,localnameXML,qname, attrs);
}
else {
cerr << "not way localname" << localnameXML << "\n";
}
}
else if (localnameXML[0] ==OSM::szTAG[0]) {
if (XMLString::equals(localnameXML,OSM::szTAG)) {
if(pCur)
{
// call a virtual dispatch based on what type of object
pCur->ProcessTag(uri,localnameXML,qname, attrs);
}
else
{
cerr << "Unexpected name\n";
}
}
else
{
cerr << "ERRO:Unknown name4:\n";
}
}
else
if ( localnameXML[0]== OSM::szRELATION[0])
{
if ( localnameXML[1]== OSM::szRELATION[1])
if ( localnameXML[2]== OSM::szRELATION[2])
{
pCur=&rel;
rel.startRelElement(uri,localnameXML,qname,attrs);
}
else{
cerr << "ERRO:Unknown name1:\n";
}
else{
cerr << "ERRO:Unknown name2:\n";
}
}
else if ( localnameXML[0]== OSM::szMEMBER[0]) // m
{
if ( localnameXML[1]== OSM::szMEMBER[1]) // e
if ( localnameXML[2]== OSM::szMEMBER[2]) // m
if ( localnameXML[3]== OSM::szMEMBER[3]) // b
if ( localnameXML[4]== OSM::szMEMBER[4]) // e
if ( localnameXML[5]== OSM::szMEMBER[5]) // r
{
rel.Member(uri,localnameXML,qname,attrs);
}
}
else if ( localnameXML[0]== OSM::szBOUND[0]) // b
{
if ( localnameXML[1]== OSM::szBOUND[1]) // o
if ( localnameXML[2]== OSM::szBOUND[2]) // u
if ( localnameXML[3]== OSM::szBOUND[3]) // n
if ( localnameXML[4]== OSM::szBOUND[4]) //d
{
//way.startElement(uri,localnameXML,qname,attrs);
world.Bound(uri,localnameXML,qname,attrs);
}
}
else if ( localnameXML[0]== OSM::szOSM[0]) // o
{
if ( localnameXML[1]== OSM::szOSM[1]) // s
if ( localnameXML[2]== OSM::szOSM[2]) // m
{
}
}
else
{
char * val = XMLString::transcode(localnameXML);
//.........这里部分代码省略.........
开发者ID:h4ck3rm1k3,项目名称:OSMTemplates,代码行数:101,代码来源:SAX2OsmHandlers.hpp
示例3: vec_replace_z
vec vec_replace_z(avec a, float b)
{
vec ret(a);
ret.z = b;
return ret;
}
开发者ID:jarmond,项目名称:prime-cpp,代码行数:6,代码来源:vec_scalar.cpp
示例4: ret
arma::vec DIIS::get_w_adiis() const {
// Number of parameters
size_t N=PiF.n_elem;
if(N==1) {
// Trivial case.
arma::vec ret(1);
ret.ones();
return ret;
}
const gsl_multimin_fdfminimizer_type *T;
gsl_multimin_fdfminimizer *s;
gsl_vector *x;
gsl_multimin_function_fdf minfunc;
minfunc.f = adiis::min_f;
minfunc.df = adiis::min_df;
minfunc.fdf = adiis::min_fdf;
minfunc.n = N;
minfunc.params = (void *) this;
T=gsl_multimin_fdfminimizer_vector_bfgs2;
s=gsl_multimin_fdfminimizer_alloc(T,N);
// Starting point: equal weights on all matrices
x=gsl_vector_alloc(N);
gsl_vector_set_all(x,1.0/N);
// Initial energy estimate
// double E_initial=get_E(x);
// Initialize the optimizer. Use initial step size 0.02, and an
// orthogonality tolerance of 0.1 in the line searches (recommended
// by GSL manual for bfgs).
gsl_multimin_fdfminimizer_set(s, &minfunc, x, 0.02, 0.1);
size_t iter=0;
int status;
do {
iter++;
// printf("iteration %lu\n",iter);
status = gsl_multimin_fdfminimizer_iterate (s);
if (status) {
// printf("Error %i in minimization\n",status);
break;
}
status = gsl_multimin_test_gradient (s->gradient, 1e-7);
/*
if (status == GSL_SUCCESS)
printf ("Minimum found at:\n");
printf("%5lu ", iter);
for(size_t i=0;i<N;i++)
printf("%.5g ",gsl_vector_get(s->x,i));
printf("%10.5g\n",s->f);
*/
}
while (status == GSL_CONTINUE && iter < 1000);
// Final estimate
// double E_final=get_E(s->x);
// Form minimum
arma::vec c=adiis::compute_c(s->x);
gsl_multimin_fdfminimizer_free (s);
gsl_vector_free (x);
// printf("Minimized estimate of %lu matrices by %e from %e to %e in %lu iterations.\n",D.size(),E_final-E_initial,E_initial,E_final,iter);
return c;
}
开发者ID:Monkey---Brainz,项目名称:erkale,代码行数:76,代码来源:diis.cpp
示例5: vec_replace_x
vec vec_replace_x(avec a, float b)
{
vec ret(a);
ret.x = b;
return ret;
}
开发者ID:jarmond,项目名称:prime-cpp,代码行数:6,代码来源:vec_scalar.cpp
示例6: limit
// Limit the magnitude of the Vec to a maximum value
Vec2D<Type> limit(double max){
Vec2D<Type> ret(x,y);
ret = ret.normalise();
return ret.multiply(max);
}
开发者ID:schanq,项目名称:AudioHacker,代码行数:6,代码来源:SchQ_Utilities.hpp
示例7: ret
Number Node::evaluteNode(List<Data> &var)
{
Number ret(0,0);
ret.decimalSystem = -1;
ret.ifInited = false;
ret.ifINF = false;
static int recursiveDepth = 0;
if (recursiveDepth == 25){
ret.decimalSystem = -1;
return ret;
}
if (this==nullptr){
ret.decimalSystem = 0;
return ret;
}
if (this->data.type == Word::cast::number)
return this->getValue();
if (this->data.type == Word::cast::variable){
//TODO: Find by name, not by value!
List<Data>::Node* mem = var.search(this->data);
if (mem!=nullptr){
recursiveDepth++;
Number ret;
if (mem->data.tree == nullptr) {
ret.setValue(0,1);
ret.decimalSystem = 10;
ret.ifInited = true;
ret.ifNumber = true;
} else
ret = mem->data.tree->evaluteNode(var);
recursiveDepth--;
return ret;
}else{
Number res(0,1);
res.decimalSystem = -2;
return res;
}
}
if (this->data.type == Word::cast::delimiter){
//Special construction for "="
bool isAssign = !strncmp(this->data.name,"=",1);
if (!strncmp(this->data.name,"==",2))
isAssign = false;
if (!strncmp(this->data.name,"]=",2))
isAssign = true;
if (!strncmp(this->data.name,"=[",2))
isAssign = true;
if (isAssign){
recursiveDepth++;
Node* ret = assign_(this->left,this->right,var);
Number result = ret->evaluteNode(var);
recursiveDepth--;
return result;
}
Number a,b;
if(this->left!=nullptr){
recursiveDepth++;
a = this->left->evaluteNode(var);
recursiveDepth--;
}else
a.decimalSystem=-1;
if(this->right!=nullptr){
recursiveDepth++;
b = this->right->evaluteNode(var);
recursiveDepth--;
} else
b.decimalSystem=-1;
recursiveDepth++;
Number ret = this->data.evalute(a,b);
recursiveDepth--;
return ret;
}
return ret;
}
开发者ID:ozeron,项目名称:Calculator,代码行数:79,代码来源:Tree.cpp
示例8: ret
std::auto_ptr<VideoDecoder>
MediaHandlerHaiku::createVideoDecoder(const VideoInfo& info)
{
std::auto_ptr<VideoDecoder> ret(new VideoDecoderHaiku(info));
return ret;
}
开发者ID:BrandRegard,项目名称:gnash,代码行数:6,代码来源:MediaHandlerHaiku.cpp
示例9: ret
//---------------------------------------------------------------------------
tTJSString operator + (const tjs_char *lhs, const tTJSString &rhs)
{
tTJSString ret(lhs);
ret += rhs;
return ret;
}
开发者ID:xmoeproject,项目名称:X-moe,代码行数:7,代码来源:tjsString.cpp
示例10: switch
address JNI_FastGetField::generate_fast_get_int_field0(BasicType type) {
const char *name = NULL;
switch (type) {
case T_BOOLEAN: name = "jni_fast_GetBooleanField"; break;
case T_BYTE: name = "jni_fast_GetByteField"; break;
case T_CHAR: name = "jni_fast_GetCharField"; break;
case T_SHORT: name = "jni_fast_GetShortField"; break;
case T_INT: name = "jni_fast_GetIntField"; break;
case T_LONG: name = "jni_fast_GetLongField"; break;
default: ShouldNotReachHere();
}
ResourceMark rm;
BufferBlob* blob = BufferBlob::create(name, BUFFER_SIZE);
CodeBuffer cbuf(blob);
MacroAssembler* masm = new MacroAssembler(&cbuf);
address fast_entry = __ pc();
Label slow;
ExternalAddress counter(SafepointSynchronize::safepoint_counter_addr());
__ mov32 (rcounter, counter);
__ mov (robj, c_rarg1);
__ testb (rcounter, 1);
__ jcc (Assembler::notZero, slow);
if (os::is_MP()) {
__ xorptr(robj, rcounter);
__ xorptr(robj, rcounter); // obj, since
// robj ^ rcounter ^ rcounter == robj
// robj is data dependent on rcounter.
}
__ clear_jweak_tag(robj);
__ movptr(robj, Address(robj, 0)); // *obj
__ mov (roffset, c_rarg2);
__ shrptr(roffset, 2); // offset
assert(count < LIST_CAPACITY, "LIST_CAPACITY too small");
speculative_load_pclist[count] = __ pc();
switch (type) {
case T_BOOLEAN: __ movzbl (rax, Address(robj, roffset, Address::times_1)); break;
case T_BYTE: __ movsbl (rax, Address(robj, roffset, Address::times_1)); break;
case T_CHAR: __ movzwl (rax, Address(robj, roffset, Address::times_1)); break;
case T_SHORT: __ movswl (rax, Address(robj, roffset, Address::times_1)); break;
case T_INT: __ movl (rax, Address(robj, roffset, Address::times_1)); break;
case T_LONG: __ movq (rax, Address(robj, roffset, Address::times_1)); break;
default: ShouldNotReachHere();
}
if (os::is_MP()) {
__ lea(rcounter_addr, counter);
// ca is data dependent on rax.
__ xorptr(rcounter_addr, rax);
__ xorptr(rcounter_addr, rax);
__ cmpl (rcounter, Address(rcounter_addr, 0));
} else {
__ cmp32 (rcounter, counter);
}
__ jcc (Assembler::notEqual, slow);
__ ret (0);
slowcase_entry_pclist[count++] = __ pc();
__ bind (slow);
address slow_case_addr = NULL;
switch (type) {
case T_BOOLEAN: slow_case_addr = jni_GetBooleanField_addr(); break;
case T_BYTE: slow_case_addr = jni_GetByteField_addr(); break;
case T_CHAR: slow_case_addr = jni_GetCharField_addr(); break;
case T_SHORT: slow_case_addr = jni_GetShortField_addr(); break;
case T_INT: slow_case_addr = jni_GetIntField_addr(); break;
case T_LONG: slow_case_addr = jni_GetLongField_addr();
}
// tail call
__ jump (ExternalAddress(slow_case_addr));
__ flush ();
return fast_entry;
}
开发者ID:mearvk,项目名称:JVM,代码行数:80,代码来源:jniFastGetField_x86_64.cpp
示例11: ret
const_iterator operator--(int)
{ const_iterator ret(*this); dec(); return ret; }
开发者ID:chrdwhdhxtszpzclljxk,项目名称:libtorrent,代码行数:2,代码来源:bitfield.hpp
示例12: usage
/*! hybrid-36 decoder: converts string s to integer result
width: must be 4 (e.g. for residue sequence numbers)
or 5 (e.g. for atom serial numbers)
s: string to be converted
does not have to be null-terminated
s_size: size of s
must be equal to width, or an error message is
returned otherwise
result: integer holding the conversion result
return value: pointer to error message, if any,
or 0 on success
Example usage (from C++):
int result;
const char* errmsg = hy36decode(width, "A1T5", 4, &result);
if (errmsg) throw std::runtime_error(errmsg);
*/
const char*
hy36decode(unsigned width, const char* s, unsigned s_size, int* result)
{
static const std::vector<int> digits_values_upper_vector([]() {
std::vector<int> ret(128U,-1);
for(unsigned i=0; i<36U; i++) {
int di = digits_upper()[i];
if (di < 0 || di > 127) {
plumed_error()<<"internal error hy36decode: integer value out of range";
}
ret[di] = i;
}
return ret;
}());
static const int* digits_values_upper=digits_values_upper_vector.data();
static const std::vector<int> digits_values_lower_vector([]() {
std::vector<int> ret(128U,-1);
for(unsigned i=0; i<36U; i++) {
int di = digits_lower()[i];
if (di < 0 || di > 127) {
plumed_error()<<"internal error hy36decode: integer value out of range";
}
ret[di] = i;
}
return ret;
}());
static const int* digits_values_lower=digits_values_lower_vector.data();
int di;
const char* errmsg;
if (s_size == width) {
di = s[0];
if (di >= 0 && di <= 127) {
if (digits_values_upper[di] >= 10) {
errmsg = decode_pure(digits_values_upper, 36U, s, s_size, result);
if (errmsg == 0) {
/* result - 10*36**(width-1) + 10**width */
if (width == 4U) (*result) -= 456560;
else if (width == 5U) (*result) -= 16696160;
else {
*result = 0;
return unsupported_width();
}
return 0;
}
}
else if (digits_values_lower[di] >= 10) {
errmsg = decode_pure(digits_values_lower, 36U, s, s_size, result);
if (errmsg == 0) {
/* result + 16*36**(width-1) + 10**width */
if (width == 4U) (*result) += 756496;
else if (width == 5U) (*result) += 26973856;
else {
*result = 0;
return unsupported_width();
}
return 0;
}
}
else {
errmsg = decode_pure(digits_values_upper, 10U, s, s_size, result);
if (errmsg) return errmsg;
if (!(width == 4U || width == 5U)) {
*result = 0;
return unsupported_width();
}
return 0;
}
}
}
*result = 0;
return invalid_number_literal();
}
开发者ID:GiovanniBussi,项目名称:test-travis-ci,代码行数:94,代码来源:h36.cpp
示例13: ret
Sequence::const_input_iterator Sequence::const_input_iterator::operator ++(int)
{
this_type ret(*this);
operator ++();
return ret;
}
开发者ID:pombreda,项目名称:main,代码行数:6,代码来源:Sequence.cpp
示例14: isEOF
PlanStageStats* TextStage::getStats() {
_commonStats.isEOF = isEOF();
auto_ptr<PlanStageStats> ret(new PlanStageStats(_commonStats, STAGE_TEXT));
ret->specific.reset(new TextStats(_specificStats));
return ret.release();
}
开发者ID:Attnaorg,项目名称:mongo,代码行数:6,代码来源:text.cpp
示例15: ret
std::string Value::getDescription()
{
std::string ret("\n");
ret += visit(*this, 0);
return ret;
}
开发者ID:253627764,项目名称:WagonWar,代码行数:6,代码来源:CCValue.cpp
示例16: ret
RS_VectorSolutions RS_DimAligned::getRefPoints() {
RS_VectorSolutions ret(edata.extensionPoint1, edata.extensionPoint2,
data.definitionPoint, data.middleOfText);
return ret;
}
开发者ID:DietmarK,项目名称:LC2DK,代码行数:5,代码来源:rs_dimaligned.cpp
示例17: _hoc_setdata
static _hoc_setdata() {
Prop *_prop, *hoc_getdata_range();
_prop = hoc_getdata_range("nax");
_p = _prop->param; _ppvar = _prop->dparam;
ret(1.);
}
开发者ID:robertcannon,项目名称:PSICS,代码行数:6,代码来源:nax.c
示例18: vec_replace_y
vec vec_replace_y(avec a, float b)
{
vec ret(a);
ret.y = b;
return ret;
}
开发者ID:jarmond,项目名称:prime-cpp,代码行数:6,代码来源:vec_scalar.cpp
示例19: generate_getPsrInfo
//.........这里部分代码省略.........
__ pop(rax);
__ jccb(Assembler::equal, std_cpuid4);
__ lea(rsi, Address(rbp, in_bytes(VM_Version::tpl_cpuidB2_offset())));
__ movl(Address(rsi, 0), rax);
__ movl(Address(rsi, 4), rbx);
__ movl(Address(rsi, 8), rcx);
__ movl(Address(rsi,12), rdx);
//
// cpuid(0x4) Deterministic cache params
//
__ bind(std_cpuid4);
__ movl(rax, 4);
__ cmpl(rax, Address(rbp, in_bytes(VM_Version::std_cpuid0_offset()))); // Is cpuid(0x4) supported?
__ jccb(Assembler::greater, std_cpuid1);
__ xorl(rcx, rcx); // L1 cache
__ cpuid();
__ push(rax);
__ andl(rax, 0x1f); // Determine if valid cache parameters used
__ orl(rax, rax); // eax[4:0] == 0 indicates invalid cache
__ pop(rax);
__ jccb(Assembler::equal, std_cpuid1);
__ lea(rsi, Address(rbp, in_bytes(VM_Version::dcp_cpuid4_offset())));
__ movl(Address(rsi, 0), rax);
__ movl(Address(rsi, 4), rbx);
__ movl(Address(rsi, 8), rcx);
__ movl(Address(rsi,12), rdx);
//
// Standard cpuid(0x1)
//
__ bind(std_cpuid1);
__ movl(rax, 1);
__ cpuid();
__ lea(rsi, Address(rbp, in_bytes(VM_Version::std_cpuid1_offset())));
__ movl(Address(rsi, 0), rax);
__ movl(Address(rsi, 4), rbx);
__ movl(Address(rsi, 8), rcx);
__ movl(Address(rsi,12), rdx);
__ movl(rax, 0x80000000);
__ cpuid();
__ cmpl(rax, 0x80000000); // Is cpuid(0x80000001) supported?
__ jcc(Assembler::belowEqual, done);
__ cmpl(rax, 0x80000004); // Is cpuid(0x80000005) supported?
__ jccb(Assembler::belowEqual, ext_cpuid1);
__ cmpl(rax, 0x80000007); // Is cpuid(0x80000008) supported?
__ jccb(Assembler::belowEqual, ext_cpuid5);
//
// Extended cpuid(0x80000008)
//
__ movl(rax, 0x80000008);
__ cpuid();
__ lea(rsi, Address(rbp, in_bytes(VM_Version::ext_cpuid8_offset())));
__ movl(Address(rsi, 0), rax);
__ movl(Address(rsi, 4), rbx);
__ movl(Address(rsi, 8), rcx);
__ movl(Address(rsi,12), rdx);
//
// Extended cpuid(0x80000005)
//
__ bind(ext_cpuid5);
__ movl(rax, 0x80000005);
__ cpuid();
__ lea(rsi, Address(rbp, in_bytes(VM_Version::ext_cpuid5_offset())));
__ movl(Address(rsi, 0), rax);
__ movl(Address(rsi, 4), rbx);
__ movl(Address(rsi, 8), rcx);
__ movl(Address(rsi,12), rdx);
//
// Extended cpuid(0x80000001)
//
__ bind(ext_cpuid1);
__ movl(rax, 0x80000001);
__ cpuid();
__ lea(rsi, Address(rbp, in_bytes(VM_Version::ext_cpuid1_offset())));
__ movl(Address(rsi, 0), rax);
__ movl(Address(rsi, 4), rbx);
__ movl(Address(rsi, 8), rcx);
__ movl(Address(rsi,12), rdx);
//
// return
//
__ bind(done);
__ popf();
__ pop(rsi);
__ pop(rbx);
__ pop(rbp);
__ ret(0);
# undef __
return start;
};
开发者ID:ericbbcc,项目名称:hotspot,代码行数:101,代码来源:vm_version_x86.cpp
示例20: vec_replace_w
vec vec_replace_w(avec a, float b)
{
vec ret(a);
ret.w = b;
return ret;
}
开发者ID:jarmond,项目名称:prime-cpp,代码行数:6,代码来源:vec_scalar.cpp
注:本文中的ret函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论