本文整理汇总了C++中KValueRef::ToDouble方法的典型用法代码示例。如果您正苦于以下问题:C++ KValueRef::ToDouble方法的具体用法?C++ KValueRef::ToDouble怎么用?C++ KValueRef::ToDouble使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KValueRef
的用法示例。
在下文中一共展示了KValueRef::ToDouble方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Minimum
void Calc::Minimum(const ValueList& args, KValueRef result)
{
if (args.at(0)->IsList())
{
KListRef list = args.at(0)->ToList();
double *arr = NULL;
arr = new double[list->Size()];
for (unsigned int c = 0; c < list->Size(); c++)
{
KValueRef d = list->At(c);
arr[c] = d->ToDouble();
}
double low = Min(arr, list->Size());
result->SetDouble(low);
delete [] arr;
} else {
throw ValueException::FromString("Minimum takes an array");
}
}
示例2: GetDouble
double KObject::GetDouble(const char* name, double defaultValue)
{
KValueRef prop = this->Get(name);
if (prop->IsDouble())
{
return prop->ToDouble();
}
else
{
return defaultValue;
}
}
示例3: convert
void convert (Statement &select, KValueRef arg)
{
if (arg->IsString())
{
std::string *s = new std::string(arg->ToString());
select , use(*s);
strings.push_back(s);
}
else if (arg->IsInt())
{
int *i = new int(arg->ToInt());
select , use(*i);
ints.push_back(i);
}
else if (arg->IsDouble())
{
double *d = new double(arg->ToDouble());
select , use(*d);
doubles.push_back(d);
}
else if (arg->IsBool())
{
bool *b = new bool(arg->ToBool());
select , use(*b);
bools.push_back(b);
}
else if (arg->IsNull() || arg->IsUndefined())
{
// in this case, we bind a null string (dequoted)
std::string *s = new std::string("null");
select , use(s);
strings.push_back(s);
}
else
{
throw ValueException::FromFormat("Unsupport type for argument: %s",
arg->GetType().c_str());
}
}