Я хочу перегрузить
ostream& operator<<(ostream& out, const myType& y)
, чтобы вывести большие целые числа без знака, представленные в myType вектором unsigned short
.Так что, если рассматриваемый вектор имеет, скажем, элементы 1f, a356, 13d5
, я хочу получить вывод 1fa35613d5
- сейчас мне это нужно только для вывода hex
или oct
.В частности, 1, 0, 0
должно быть выведено до 100000000
.Я хочу добиться этого путем последовательного вывода элементов вектора.Однако с помощью этого метода я получаю 100
, несмотря на то, что я установил
out.width(4);
out.fill('0');
out << std::internal;
out << std::noskipws;
Конечно, я мог сначала записать ushort
в строку, а затем вывести ее, но яЯ бы предпочел использовать только инструкции по форматированию для out
, поскольку это облегчает соблюдение настроек hex
или oct
out
.Какой вариант форматирования мне здесь не хватает?