本文整理汇总了C++中pathvector::const_iterator::GetDirectory方法的典型用法代码示例。如果您正苦于以下问题:C++ const_iterator::GetDirectory方法的具体用法?C++ const_iterator::GetDirectory怎么用?C++ const_iterator::GetDirectory使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pathvector::const_iterator
的用法示例。
在下文中一共展示了const_iterator::GetDirectory方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetCommonDirectory
CTGitPath CTGitPathList::GetCommonDirectory() const
{
if (m_commonBaseDirectory.IsEmpty())
{
PathVector::const_iterator it;
for(it = m_paths.begin(); it != m_paths.end(); ++it)
{
const CTGitPath& baseDirectory = it->GetDirectory();
if(m_commonBaseDirectory.IsEmpty())
{
m_commonBaseDirectory = baseDirectory;
}
else if(!m_commonBaseDirectory.IsEquivalentTo(baseDirectory))
{
// Different path
m_commonBaseDirectory.Reset();
break;
}
}
}
// since we only checked strings, not paths,
// we have to make sure now that we really return a *path* here
PathVector::const_iterator iter;
for(iter = m_paths.begin(); iter != m_paths.end(); ++iter)
{
if (!m_commonBaseDirectory.IsAncestorOf(*iter))
{
m_commonBaseDirectory = m_commonBaseDirectory.GetContainingDirectory();
break;
}
}
return m_commonBaseDirectory;
}
示例2: if
bool
CTGitPathList::AreAllPathsFilesInOneDirectory() const
{
// Check if all the paths are files and in the same directory
PathVector::const_iterator it;
m_commonBaseDirectory.Reset();
for(it = m_paths.begin(); it != m_paths.end(); ++it)
{
if(it->IsDirectory())
{
return false;
}
const CTGitPath& baseDirectory = it->GetDirectory();
if(m_commonBaseDirectory.IsEmpty())
{
m_commonBaseDirectory = baseDirectory;
}
else if(!m_commonBaseDirectory.IsEquivalentTo(baseDirectory))
{
// Different path
m_commonBaseDirectory.Reset();
return false;
}
}
return true;
}