• Как не превратиться в мамонта?

    @laphroaig
    Есть разница между тем когда ты знаешь, чего ты не знаешь и тем, когда ты не знаешь чего ты не знаешь. В первом случае ты знаешь, что тебе нужно узнать для решения конкретной задачи, а во втором просто тупишь.
    Ответ написан
    1 комментарий
  • В чем ошибка (работа с памятью, деструкторы)?

    @laphroaig
    При передаче объекта по значению происходит его копирование, но динамически выделенная память не копируется, а только значение указателя _coords. В результате у вас два объекта которые ссылаются на один и тот же массив. По завершению работы Dist копия объекта уничтожается с вызовом деструктора и освобождением памяти. А по завершению работы программы вызываются деструкторы объектов A и B в которых происходит попытка освободить память для _coords второй раз, а это неопределенное поведения (undefined behaviour) другими словами может произойти вообще что угодно.

    Вам нужно самому реализовать конструктор копирования или запретить его. Когда вы просто удаляете деструктор происходит утечка памяти, когда передаете по ссылке объекты не копируются поэтому всё норм. Если объект динамически выделяет память, например с помощью new или delete, то реализация конструктора копирования обязательна. Можно также его запретить перенеся конструктор копирования в приватную секцию или для c++11 объявить Point(const Point&) = delete; В этом случае передача такого объекта по значению приведет к ошибке компиляции. Это важная тема изучите ее.

    Все что выделено с помощью new [] удаляется только с помощью delete[]
    Ответ написан
    1 комментарий
  • В чем ошибка (работа с памятью, деструкторы)?

    vt4a2h
    @vt4a2h Куратор тега C++
    Senior software engineer (C++/Qt/boost)
    У вас же C++, т.е. можете использовать вектор для хранения элементов без необходимости явного выделения памяти:
    #include <vector>
    
    // double* _coords;
    std::vector<double> _coords;
    
    // _coords = new double[N];
    _coords.resize(N);

    Ну и деструктор можете не писать.
    Ответ написан
    Комментировать
  • Что за шум вокруг темы, что программисты скоро не нужны?

    Vlad_IT
    @Vlad_IT
    Front-end разработчик
    программисты не будут скоро восстребованы.

    Когда мне было 16, я начинал только программировать, меня волновал тот же самый вопрос. Вот даже тему создавал на форуме www.cyberforum.ru/job/thread127123.html (сильно не читайте, мне стыдно за свои сообщения того времени =) ) Это было 7 лет назад, за это время особо ничего не изменилось, поэтому думаю через еще 7 лет будет все нормально.
    Работы для программиста море, а работники нормальные как правило отсутствуют. Понятное дело, что программирование стало "мейнстримом", делать сайты идут все кому не лень, т.к. везде кричат "Программирование сделает вас богатыми! Всего за месяц вы научитесь создавать сайты за деньги!", благо майнинг переманивает людей, желающих легких денег (не в обиду профессиональным майнерам). Но скажу точно, если вы прочитали хоть одну книжку по своему языку программирования, можете писать без использования jQuery и Boostrap (не в обиду этим технологиям, просто часто вижу, что люди учат не JS/CSS, а jQuery/Boostrap), умеете ставить правильные сроки, сможете написать игру "змейка" - то вы уже лучше 90% программистов, а то и больше.
    будут такие инструменты

    Помню 7 лет назад писали "Вот совсем скоро создадут программу, с помощью которой дизайнеры будут рисовать дизайн, и он сразу будет сохраняться в HTML или шаблон движков". Вроде бы не соврали, такие есть, но качество выходного продукта подкачало, что даже часто хуже качества работы школьника.
    будут такие инструменты, которые заменят программеров", ИИ и все такое...

    Так будет с большинством профессий, даже со специалистами по машинному обучению. Но надо понимать, что это случится еще не скоро, лет 10 у вас есть, а там сделают безусловных доход в развитых странах, а в менее развитых, сделают закон, требующий чтобы более 50% сотрудников были не ИИ :-)
    Скажу точно, если вам программирование не очень нравится, то советую уйти в другую профессию, т.к. без любви к этой профессии будет сложно часами сидеть и учить материал (когда тебя не заставляют). Деньги легкие вы тут тоже не сделаете.
    Ответ написан
    10 комментариев
  • Что за шум вокруг темы, что программисты скоро не нужны?

    AlexMaxTM
    @AlexMaxTM
    школьники цены демпингуют

    Кто-то искусственно создает панику? Какой смысл тогда?

    Не палите тему, чем больше школьников испугаются и не пойдут в IT, тем выше будут заработки у тех, кто остался. :)
    Ответ написан
    4 комментария
  • Как пробросить порт через ssh туннель, чтобы сервер не мог подключиться к шеллу клиента?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    "может ли злоумышленник..." - нет.
    Ответ написан
    Комментировать
  • Какие есть хорошие книги по разработке high-load на Java?

    ashofthedream
    @ashofthedream
    Java Performance - Charlie Hunt & Paul Hohensee
    Ответ написан
    Комментировать
  • Как освободить память в java?

    @Mercury13
    Программист на «си с крестами» и не только
    1. Самое простое. var = null; Если нужно ещё и мусорщика пустить — ну пусти, System.gc();
    2. Если нужно, чтобы объект не удерживался — WeakReference. Как только объект исчезнет, слабая ссылка перещёлкивается в null. Бывает нужно: 1) если объекты-дети переживают своих владельцев, и при этом потерять владельца — это несмертельно; 2) когда строим какой-нибудь временный список.
    3. Не выдавать безымянный объект наружу, если он переживает создателя. В безымянных объектах есть ссылка на создателя. Выдавать лямбду: если создатель не нужен, ссылки никакой не будет.
    4. Аналогично с внутренними классами — если он переживает создателя, делай его static.
    5. String.intern, если вы работаете с кучей мелких одинаковых строк. Ну или наладить свой кэш :)
    6. Использовать объектные пулы и прочие структуры, снижающие нагрузку на мусорщик.
    7. Разбивая строки на мелкие кусочки, использовать паттерн doSomething(String data, int start, int length), не вытягивая подстроку физически. Использовать StringBuilder.
    Ответ написан
    1 комментарий
  • Можно ли связать десяток arduino и один raspberry pi?

    @LiguidCool
    Вариантов море, но если все рядом, я бы выбрал какую-нить шину типа CAN. Можно соединять напрямую через COM или RS485.
    Ответ написан
    Комментировать
  • Какой выбрать чистый линукс с поддержкой Cortex A8 для работы Java сервера и браузера?

    NeiroNx
    @NeiroNx
    Программист
    Arch Linux - и вручную собирать: JRE, XORG, Сhromium.
    Ответ написан
    Комментировать
  • Имеется ли JavaFX конструктор интерфейса в NetBeans IDE\Eclipse?

    @Vorh
    Имеется Scene Builder в котором конструируешь интерфейс , на выходе получаешь fxml файл который подключаешь в коде с помощью FXMLLoader.
    Более подробно можете почитать тут
    Ответ написан
    Комментировать
  • На чём сделать DIY камеру заднего вида?

    tremo0880
    @tremo0880
    Inf.Sec
    мой выбор : raspberry pi
    легко, удобно, доступно
    Ответ написан
    Комментировать
  • Как вызвать метод из Java класса в JavaScript?

    severus256
    @severus256
    Code everywhere....
    Я так понимаю, вы хотите с фронтенда вызывать методы бекэнда в яве?
    тогда вам нужно смотреть в сторону Rest-контроллеров и AngularJS, к примеру
    Ответ написан
    Комментировать
  • Как узнать при запуске программы на какой операционной системе она запускается?

    @Free_ze
    Пишу комментарии в комментарии, а не в ответы
    System.getProperty("os.name");
    System.getProperty("os.version");
    Ответ написан
    Комментировать