コード例 #1
0
ファイル: XMLTreeNode.cpp プロジェクト: kusku/red-forest
//----------------------------------------------------------------------------
// Checks if a key is on the tree
//----------------------------------------------------------------------------
bool CXMLTreeNode::ExistsKey (const char* _pszKey)
{
  assert(_pszKey);

  CXMLTreeNode TreeFound = GetSubTree(_pszKey);
  return TreeFound.Exists();
}
コード例 #2
0
ファイル: vnode.cpp プロジェクト: niewenchao/Modeling
void VNode::GetSubTree(VNode* node,VNodeVector& nodevector) //获取node节点的子树,保存在nodevector中

{  
	nodevector.push_back(node);
	int num=node->m_vChildList.size();
	for(int i=0;i<num;i++)
	{
		GetSubTree(node->GetChildNode(i),nodevector);
	}
}
コード例 #3
0
ファイル: vnode.cpp プロジェクト: niewenchao/Modeling
void VNode::Delete()//删除节点
{
	VNodeVector nodelist;
	GetSubTree(this,nodelist);
	int num=nodelist.size();
	for(int i=0;i<num;i++)
	{
		delete nodelist[i]; //直接删除节点???
	}
	nodelist.clear();
	m_vChildList.clear();
}
コード例 #4
0
ファイル: XMLTreeNode.cpp プロジェクト: kusku/red-forest
//----------------------------------------------------------------------------
// Operator that returns a tree node
//----------------------------------------------------------------------------
CXMLTreeNode CXMLTreeNode::operator[] (const char* _pszKey) const
{
  assert(_pszKey && m_pNode);

  CXMLTreeNode TreeFound;

  if (_pszKey && m_pNode)
  {
    TreeFound = GetSubTree(_pszKey);
  }

  return TreeFound;
}