本文整理汇总了C++中ArrayData::lvalNew方法的典型用法代码示例。如果您正苦于以下问题:C++ ArrayData::lvalNew方法的具体用法?C++ ArrayData::lvalNew怎么用?C++ ArrayData::lvalNew使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ArrayData
的用法示例。
在下文中一共展示了ArrayData::lvalNew方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: escalate
ArrayData *SharedMap::lvalNew(Variant *&ret, bool copy) {
ArrayData *escalated = escalate();
ArrayData *ee = escalated->lvalNew(ret, false);
if (ee) {
escalated->release();
return ee;
}
return escalated;
}
示例2: assert
Variant &Array::lvalAt() {
if (!m_px) ArrayBase::operator=(ArrayData::Create());
Variant *ret = nullptr;
ArrayData *arr = m_px;
ArrayData *escalated = arr->lvalNew(ret, arr->getCount() > 1);
if (escalated != arr) ArrayBase::operator=(escalated);
assert(ret);
return *ret;
}
示例3: ASSERT
Variant &Array::lvalAt() {
if (!m_px) {
SmartPtr<ArrayData>::operator=(ArrayData::Create());
}
Variant *ret = NULL;
ArrayData *arr = m_px;
ArrayData *escalated = arr->lvalNew(ret, arr->getCount() > 1);
if (escalated) {
SmartPtr<ArrayData>::operator=(escalated);
}
ASSERT(ret);
return *ret;
}
示例4: releaseIfCopied
ArrayData *SharedMap::lvalNew(Variant *&ret, bool copy) {
ArrayData *escalated = SharedMap::escalate();
return releaseIfCopied(escalated, escalated->lvalNew(ret, false));
}
示例5: releaseIfCopied
ArrayData *APCLocalArray::LvalNew(ArrayData* ad, Variant *&ret, bool copy) {
ArrayData *escalated = Escalate(ad);
return releaseIfCopied(escalated, escalated->lvalNew(ret, false));
}