Кресты / Говнокод #27761 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
for (k = k + 0, j = 0; j < m; j++)
{
    b[k] = mat[i][j];
    cout << b[k];
}

Увидел в лабе у чела из универа. Почему бы лишний раз не присвоить k собственное значение

Запостил: VladimirM4K VladimirM4K, (Updated )

Комментарии (11) RSS

      • Почему в PHP всем понятный "echo", а в S++ - какой-то невнятный "cout <<"? Я думал, это какая-то математическая операция...
        Ответить
        • У Страуструпа было объяснение: сначала хотел сделать "<", но все читали это как "меньше чем"
          Ответить
            • этот оператор можно переопределять, и тогда объект отправится в поток в нужном формате. Причем можно делать это отдельно от объекта и потока.

              вероятно, можно было бы сделать так:

              cout.echo(foo)

              но тогда нужны были бы экстеншн методы

              а, там еще можно вот так:



              cout << foo << " " << baz << std::endl
              Ответить
              • > экстеншен методы

                echo(std::cout, foo);

                Можно и перегрузочек добавить с несколькими аргументиками для удобства (для новых типов достаточно будет написать "главную" перегрузку с одним, дальше шаблончик разберётся):

                echo(std::cout, foo, " ", baz, std::endl);

                В общем-то даже на древних крестах без вариадик шаблончиков работало бы если сильно много аргументиков не надо.
                Ответить
                • > В общем-то даже на древних крестах без вариадик шаблончиков работало бы если сильно много аргументиков не надо.
                  Старый добрый паттерн «копипаст n раз»?
                  Ответить
                  • Ну да, или бюст-препроцессор. Он с такими портянками неплохо справляется.
                    Ответить
          • «Я сделал X, потому что до этого хотел сделать Y, но оно оказалось плохим». Какие-то сепульки.
            Ответить

Добавить комментарий

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8