1

boost pdateは不変ですが、ループで使用するにはどうすればよいですか?last-dealt-withdateと比較する必要があります。

    date last(neg_infin);
    for (int i = 0; i < tasks.size(); i++) {
            if (tasks[i]->getTime().date() > last) {
                cout << ":::" << tasks[i]->getTime().date() << ":::" << endl;
            }
            cout << "[" << i << "]" << '\t';
            tasks[i]->print();
            // i need to change the last date here
            cout << endl;
        }

すなわち。現在の時刻の日付部分が前より遅い場合は日付を印刷し、そうでない場合は時刻のみを印刷します

4

2 に答える 2

0

さて、あなたはtasksすでにインデックスを扱っているので、代わりに日付ではなく「最後の」インデックスを保存してください。

int lastIndex = 0;
for (int i = 1; i < tasks.size(); i++) {
        if (tasks[i]->getTime().date() > tasks[lastIndex]->getTime.date()) {
            cout << ":::" << tasks[i]->getTime().date() << ":::" << endl;

        }
        cout << "[" << i << "]" << '\t';
        tasks[i]->print();

        lastIndex = i;

        cout << endl;
    }
于 2013-01-19T14:00:14.697 に答える
0

なぜ明示的な最後の要素が必要なのですか?これもうまくいきませんか?

if (i == 0 || tasks[i]->getTime().date() > tasks[i-1]->getTime.date()) {
于 2013-01-19T14:02:21.547 に答える