当前位置: 首页>>代码示例>>C++>>正文


C++ Part::end方法代码示例

本文整理汇总了C++中Part::end方法的典型用法代码示例。如果您正苦于以下问题:C++ Part::end方法的具体用法?C++ Part::end怎么用?C++ Part::end使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Part的用法示例。


在下文中一共展示了Part::end方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: reduceParts

void Demidify::reduceParts(Song *song, size_t trackNo)
{
    if (verbose >= 2)
        out << "    |    |    +- Trying to compact Parts (there are "
            << (*song)[trackNo]->size() << ")...\n";

    size_t pos = 0;
    size_t partsCompacted = 0;
    while (pos < (*song)[trackNo]->size()-1)
    {
        Part *first  = (*(*song)[trackNo])[pos];
        Part *second = (*(*song)[trackNo])[pos+1];
        if (first->phrase()->title() == second->phrase()->title())
        {
            if (!first->repeat())
            {
                first->setRepeat(second->start() - first->start());
                (*song)[trackNo]->remove(second);
                first->setEnd(second->end());
                delete second;
                ++partsCompacted;
                continue;
            }
            else
            {
                Clock startTime = first->start();
                Clock repeat    = first->repeat();
                while(startTime+repeat <= second->start()) startTime += repeat;
                if (startTime != second->start())
                {
                    ++pos;
                    continue;
                }
                if (second->end() - second->start() > repeat)
                {
                    ++pos;
                    continue;
                }
                (*song)[trackNo]->remove(second);
                first->setEnd(second->end());
                delete second;
                ++partsCompacted;
            }
        }
        else
        {
            ++pos;
        }
    }

    if (verbose >= 2)
        out << "    |    |    |    +- compacted " << partsCompacted
            << " Parts\n";
}
开发者ID:RangelReale,项目名称:KaraokeMachine,代码行数:54,代码来源:Demidify.cpp

示例2: display

void display(Song *s)
{
    for (int n = 0; n < s->size(); ++n)
    {
        Track *t = s->track(n);
        cout << "-- ";
        for (int m = 0; m < t->size(); ++m)
        {
            Part *p = (*t)[m];
            cout << "|"<<p->phrase()->title();
            cout << ","<<p->start()<<"-"<<p->end();
            cout <<"| ";
        }
        cout << "\n";
    }
}
开发者ID:RangelReale,项目名称:KaraokeMachine,代码行数:16,代码来源:test.cpp


注:本文中的Part::end方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。