• Где найти книгу или часть из нее по работе с массивами на С++?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Похожу у Вас нет понимания "Что такое массив?". Как правило, программеры, понимают под этим последовательность однородных данных одного типа.

    * Типы данных как Вы знаете бывают разными: int, float, long int и др. В виду того что C++ позволяет писать в объектно ориентированном стиле, то Вы также можете использовать и свои собственные типы, т.е. объекты классов из каких-либо библиотек, к примеру из boost или собственноручно написанных;
    * Массив имеет размер или такой признак конца на который можно опереться;
    * По массиву можно пробежаться, т.е. переходить от одного элемента к другому пока не доберемся до последнего элемента;
    * К любому элементу массива можно иметь произвольный доступ. Захотели взять 5-й элемент, то нет проблем если размер больше 5;
    * Признак конца можно организовать по-разному, можно держать во внешней переменной счетчик байт означающий сколько в массив элементов. А можно заложиться на специфическое значение в массиве которое будет означать что массив завершено, к примеру 0x0(нулл-терминированный массив), есть и др. способы, но эти наиболее популярны;
    * Добавить в массив это просто перейти к последнему элементу и задать значение добавляемого элемента + увеличить значение счетчика элементов в массиве или изменить расположение признака конца массива, подвинуть чуть дальше;
    * Удалить из массива, значит надо уменьшить значение счетчика элементов в массиве или изменить расположение признака конца массива;

    Пока изучите это, а потом если интересно,то спрашивайте еще. Не буду засорять сразу голову, т.к. проблем при работе с массивами еще много, но мешать все сразу не следует! Поэтапно учите

    Забыл сказать, что Вам не обязательно привязываться именно к С++, на чистом С теже самые правила. По той лишь причине что язык С++ проектировался и разрабатывался для совместимости с кодом на С
    Ответ написан
    7 комментариев
  • Случайно раз оставил при 100% батареи на зарядке на всю ночь ipad mini, могло от одного раза что-нибудь случиться?

    C телефоном всё будет в порядке, а с Вами наверное нет. Паранойя - весь прогрессивная...
    Ответ написан
    2 комментария
  • Какой скрипт используется для отрисовки графиков в Google?

    buttersmai
    @buttersmai
    Определенно Google Charts
    https://code.google.com/apis/ajax/playground/?type...

    Часто использую различные графики в разработке для визуализации данных. Очень много опций и возможностей кастомизации
    Ответ написан
    Комментировать
  • Какой скрипт используется для отрисовки графиков в Google?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Есть еще такая тема: www.chartjs.org
    Ответ написан
    Комментировать
  • Какой скрипт используется для отрисовки графиков в Google?

    Видимо, это - https://developers.google.com/chart/
    Но мне больше нравится jqplot.
    Ответ написан
    Комментировать
  • Какой скрипт используется для отрисовки графиков в Google?

    GavriKos
    @GavriKos
    99% что разработчик - сам гугл. Можете flot использовать: www.flotcharts.org
    Ответ написан
    Комментировать
  • Зачем используются константные методы?

    AxisPod
    @AxisPod
    У константных объектов можно вызвать только константные методы, поэтому и требуется помечать все методы, которые не изменяют данные.

    UPD. Судя по ответам, половина вообще не понимает о чём вопрос. Дабы развеять все непонятки, чутка подробнее.

    class foo {
      int val;
      int get_counter;
    public:
      foo(int v) : val(v), get_counter(0) {}
      int get() { ++get_counter; return val; }
      int get() const { return val; }
      int get_counter() const { return get_counter; }
    };
    
    foo f(123141);
    const foo f2(f);
    
    f.get(); // вызывается нормально
    f.get_counter(); // вызывается нормально, даже с пометкой const, даже в случае, если нет не const версии
    
    f2.get(); // без const версии метода была бы ошибка компиляции
    f2.get_counter(); // вызывается без проблем


    Ну а теперь осталось понять, зачем это всё надо. А всё просто, да, исключить человеческий фактор (как сказано до меня). Если в мелкой библиотеке без этого еще как-то пережить можно, то в большой уже нет.

    Ну и если идти дальше, то стандартная библиотека активно использует const объекты. И без адекватного понимания работы модификатора const лезть в C++ вообще не следует.
    Ответ написан
    Комментировать
  • Какие есть серьезные программы на С?

    @lookid
    Весь, поверьте, весь С укладывается в ~292 страницы КерниганаРитчи. Учитывая, что в С нет ничего кроме массивов, указателей и структур, то практически весь код на С выглядит примерно вот так : https://github.com/jonof/jfbuild/blob/master/kenbu...
    Учитывая, что сейчас почти всё можно решить на Java и Python, то на С пишется такой лютейший хардкор, что даже с ходу не поймете что к чему. Посмотрите хотя бы ядро Linux.
    Ответ написан
    2 комментария
  • Какую книжку прочитать по электричеству?

    0neS
    @0neS
    Учебник физики -> М.Джонс. Электроника, практический курс. -> Хоровиц-Хилл. Искусство схемотехники.
    Ответ написан
    Комментировать
  • Как реализовать программу на ПК для отправки данных через COM-порт

    @DancingOnWater
    QtSerialPort из фреймворка Qt
    Ответ написан
    Комментировать
  • Какой лучше выбрать Visual Studio? 2013 или 2010?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Если любите MILF, берите 2010.
    Ответ написан
    Комментировать
  • Среда разработки C++?

    EXL
    @EXL
    Энтузиаст
    Лично я советую вам Qt Creator - сейчас эта IDE активно поддерживается разработчиками, в отличие от всяких там Code::Blocks и Dev-Cpp.
    Еще можно посмотреть в сторону Eclipse, если не пугает его неповоротливость и объемность.
    Для Hello World'ов и простейших задачек можно пользоваться VIM/GVIM, но он сложен в настройке и не совсем подходит под понятие IDE. Это просто крутой хакерский текстовый редактор.
    Ответ написан
    4 комментария
  • Программы для облегчения проектирования программ?

    @stringer
    Выполнил несколько проектов в Enterprise Architect. Плюсы:
    1. внятный учёт требований к ПО, позволяющий реально понять какой реквест чем реализуется;
    2. связка с контролем версий, можно хотя бы понять что когда и как менялось;
    3. реально выполним round-trip (генерация/реверс/генерация), не без проблем конечно, но другими средствами я вообще не смог добиться на своём шарпе;
    Минусы:
    1. плохо работает с женериками, генерация возможна, реверс - нет, он их не видит;
    2. некоторая тормознутость;
    3. сложно с масштабными диаграммами, но может просто у меня монитор маленький
    Ответ написан
    Комментировать
  • Почему программа падает? Где ошибка в коде?

    bogolt
    @bogolt
    Падет оттого что выкладываете кусок кода, по которому ничего нельзя сказать. Есть такое понятие - минимальный рабочий пример. Он должен компилироваться, в идеале быть представленным одним файлом, в самом большом идеале - снабженным Makefile или простой инструкцией по сборке.
    Также подразумевается что вы уже:
    1. Пытались сами отладить программу в отладчике
    2. Навтыкали логов через одну строку кода, чтобы точно локализовать место падения, но так и не поняли почему именно случается падение.

    Обычно на реализации второго пункта этой программы человек сам понимает причины крэша. В противном случае - как я уже писал пишите минимальный рабочий пример и выкладывайте. А то телепаты берут дорого, а отнимать время подобными недооформленными вопросами у других хороших людей, готовых помогать это банальное хамство.
    Ответ написан
    6 комментариев
  • Как заработать новичку на низкоуровневом программировании?

    @FoxInSox
    Хм, нужно устроится на работу.
    Ответ написан
    Комментировать
  • Подкиньте пару хороших книг по Qt (С++)

    EXL
    @EXL
    Энтузиаст
    1. Бланшет, Саммерфилд - Qt4 Программирование GUI на С++. 2ed. - 2008
    2. Шлее Макс - Профессиональное программирование на C++. +CD. Qt 4.8. (В подлиннике) - 2012
    3. Марк Саммерфилд - Qt Профессиональное программирование (High tech) - 2011
    4. Андрей Боровский - Qt4.7+. Практическое программирование на C++ - 2012
    5. Юрий Земсков - Qt4 на примерах

    Первая книга от создателей Qt, в первых главах рассмотрено создание приложения для работы с таблицами (этакий мини Excel). Так что в прямом смысле за день можно разобраться во всех тонкостях создания подобных приложений.
    Вторая книга от известного в Qt-сообществе программиста, очень подробный и толстый справочник по виджетам, их описание и примеры использования. Имеется несколько глав по JavaScript/QML/QtQuick. Однозначный Must Have.
    Третья книга от одного из программистов, разрабатывающих Qt. В ней рассказано о профессиональной разработке приложений. В чем-то является продолжением первой книги.
    Четвертая книга от отечественного программиста, рассмотрены в основном принципы разработки сложных приложений. Отдельный разделы посвящены программированию трехмерной и интерактивной графики, баз данных, многопоточных приложений и созданию собственных виджетов.
    Пятая книга на мой взгляд уже устарела. Её вполне заменяет Макс Шлее.

    Это все книги по Qt 4.X.X на русском языке, известные мне (не считая редакций). Если кто-то знает ещё, пожалуйста отпишитесь.

    По Qt 5 книг пока нету. Макс Шлее сказал, что начнет работу над новой книгой с выхода версии Qt 5.2. По поводу книг для Qt 5 см. ответ ниже. Но не стоит забывать, что у Qt документация одна из самых лучших и вполне способна заменить книгу. Поэтому настоятельно рекомендую пользоваться Qt Assistant при возникновении затруднений.

    По C++ рекомендую конечно классику:
    Прата С. - Язык программирования С++. Лекции и упражнения - 2011
    Ответ написан
    1 комментарий
  • Какой язык с семейства Си учить ?

    IgorO2
    @IgorO2
    73
    Учите английский, он сейчас очень востребован =)
    Ответ написан
    Комментировать
  • Какой язык с семейства Си учить ?

    @CheeseMaster
    Если только для повышения - можно и не учить никакой, я думаю. Сказать, что освоил C# и продемонстрировать пару хелловордов.
    Ответ написан
    Комментировать