Статус этой учётной записи - Принято
  • Комментарий к говнокоду #28217 в ответ guest

    • а давайте сравним


      #include <iostream>
      #include <vector>
      class Fake {
      public:
      	int id;
      };
      
      int main() {
      	std::vector<Fake*> fakes;
      	for (auto i = 0; i < 100; i++) {
      		fakes.push_back(new Fake{i}); //течка ну и похуй
      	}
      	for (auto v : fakes) {
      		std::cout << v->id << std::endl;
      	}
      }


      vs
      'use strict';
      
      const fakes = [];
      for (let i = 0; i < 100; i++) {
          fakes.push({id: i});
      }
      for (let fake of fakes) {
          console.log(fake.id);
      }


      Неоптимизированный C++
      Milliseconds      : 7
      Ticks             : 78024
      TotalDays         : 9,03055555555556E-08
      TotalHours        : 2,16733333333333E-06
      TotalMinutes      : 0,00013004
      TotalSeconds      : 0,0078024
      TotalMilliseconds : 7,8024


      Релизный C++
      Milliseconds      : 4
      Ticks             : 48142
      TotalDays         : 5,57199074074074E-08
      TotalHours        : 1,33727777777778E-06
      TotalMinutes      : 8,02366666666667E-05
      TotalSeconds      : 0,0048142
      TotalMilliseconds : 4,8142


      16-я нода (джит-хуит, последняя стабильная хорошая версия)
      Milliseconds      : 35
      Ticks             : 351439
      TotalDays         : 4,06758101851852E-07
      TotalHours        : 9,76219444444444E-06
      TotalMinutes      : 0,000585731666666667
      TotalSeconds      : 0,0351439
      TotalMilliseconds : 35,1439


      Таким образом, наша программа на С++ быстрее в восемь раз.
      Ответить
    • завтра сделаю .. сегодня уже спать хочу
      Ответить
  • Комментарий к говнокоду #28217 в ответ guest

    • Да. А ты, видимо, нет, иначе не упоминал бы тут new
      Ответить
    • пиши код ... я его переведу на JS запущу на тест и посмотрим .. сравним
      Ответить
  • Комментарий к говнокоду #28217 в ответ guest

    • Разумеется, нет.
      Откуда вообще ты это взял? И зачем тебе "new"?
      Ты это просто так написал, для хохмы?
      Ответить
    • что нить больше чем hello world на с++ писал?
      Ответить
  • Комментарий к говнокоду #28217 в ответ guest

  • Комментарий к говнокоду #28217 в ответ guest

    • ..и каждый их стилей омерзителен по своему.


      Нет ребята, ничего лучше руби всё равно не придумали
      Ответить
    • ага так придумали что забыли нормальной скорости движ сделать
      Ответить
  • Комментарий к говнокоду #28217 в ответ Soul_re@ver

  • Комментарий к говнокоду #28217 в ответ guest

  • Комментарий к говнокоду #28217 в ответ guest

    • Потому что .at(-1) не поддерживается в браузерах, выпущенных более года назад.
      Ответить
    • А вы знаете что то что в питоне 2 не работает в 3 и наоборот? Вы думаете мне интересно знать что было в прошлом веке?
      Ответить
  • Комментарий к говнокоду #28217 в ответ guest

    • Когда долго занимаешься программированием на языках высого уровня, начинаешь видеть распостранненые операции.

      Получение последнего элемента массива или стека -- вполне себе такая распостраннная операция, и именно по этой причине большинство языков умеет её десятки лет.

      Так умеет C++
      https://cplusplus.com/reference/vector/vector/back/

      Так умеет руби
      https://apidock.com/ruby/Array/last

      Так умеет питон через негативные индексы ([-1])

      Так умеет котлин
      https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/last.html

      Так умеет Swift
      https://developer.apple.com/documentation/swift/array/last


      В JS такой функционал завезли совсем недавно, года еще не прошло, и потому вы о нем даже и не знаете (буткемп вот знает)

      Я могу понять отсутствие такого фунционала в си (у низкоуровневых ЯП свои задачи) но JS/TS крайне высокоуровневый ЯП, и я жду от него множество сахар для _типивых_ задач
      Ответить
    • Почему [-1] можно и стандарт. A .at(-1) нельзя?
      Ответить
  • Комментарий к говнокоду #28217 в ответ guest

    • Получил, и еще раз убедился, что простые вещи делаются на этом языке сложно и многобуквенно
      Ответить
    • .at(-1) имеет столько же буковок сколько и в .last() ... думаю вам надо подучить математику
      Ответить