Разница между ::std::ios_base::app и ::std::ios_base::ate

В чём разница между ::std::ios_base::app и ::std::ios_base::ate?

Эта программа выводит то же самое, что и для ::std::ios_base::app:

#include <sstream>
#include <iostream>

int main()
{
    ::std::stringstream ss{"1", ::std::ios_base::in bitor ::std::ios_base::out bitor ::std::ios_base::ate};
    ::std::cout << ss.str() << '\n';
    ss << "2";
    ::std::cout << ss.str() << '\n';
    ss << "3";
    ::std::cout << ss.str() << '\n';
    return 0;
}

Ответы (0 шт):