Skip to content

Заготовка лабораторной по курсу "ООП (С )" ФИТ НГУ

Notifications You must be signed in to change notification settings

dsavenko/nsu-oop-cpp-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Заготовка репозитория для лабораторных по курсу "ООП (С )" ФИТ НГУ

  1. Для больших задач (домашняя работа) создавайте папки на верхнем уровне (lab1, lab2 и т.д.).
  2. Работу в классе заливайте в папку classwork.

Заготовка проекта CMake GoogleTest

В папке lab1 лежит пример того, как можно настроить свой проект с использованием кроссплатформенной системы сборки CMake и библиотеки тестирования GoogleTest.

Содержимое:

  1. main.cpp - реализация функции main. Не рекомендуется добавлять в этот файл что-то еще.
  2. task1/2.h, task1/2.cpp - файлы реализации задачи.
  3. task1/2_test.cpp - тесты (с использованием GoogleTest).
  4. CMakeLists.txt - правила сборки для CMake.

Подготовка к сборке:

  1. Убедитесь, что в системе установлен компилятор C . Для Windows проще всего установить Visual Studio (компилятор идёт вместе с ней), но есть и другие варианты (например, mingw/cygwin gcc). Для других систем (Linux, Mac OS) установите gcc.
  2. Установите CMake.

Как собрать проект из командной строки:

  1. Cоздайте папку build внутри lab1. Перейдите в неё. Все дальнейшие действия нужно выполнять из этой папки.
  2. Запустите cmake ... Результатом этой операции будет создание билд-скриптов в текущей папке. Это нужно сделать один раз.
  3. Запустите сборку при помощи команды cmake --build . (под Linux/MacOS/cygwin/mingw также сработает просто make). Это нужно делать каждый раз для пересборки проекта.
  4. Проверьте, что собрались и запускаются исполняемые файлы nsuoop-cpp-template(.exe) и test(.exe). Под Windows они могут лежать в папке Debug.

Можно также воспользоваться CMake GUI.

Visual Studio поддерживает CMake, поэтому можно просто открыть папку с проектом в ней. В этом случае по умолчанию папкой для сборки будет out/build, а не build.

Как вносить изменения:

  1. При внесении изменений в существующие h/cpp-файлы для пересборки нужно снова сделать cmake --build . (или make). Если пользуетесь IDE, она будет делать это сама.
  2. При создании новых (или удалении старых) cpp-файлов необходимо соответствующим образом изменить CMakeLists.txt (см. комментарии в нём). После этого снова сделать cmake --build . (или make). Это не относится к h-файлам, так как они не порождают новые единицы трансляции. h-файлы можно создавать и удалять, не меняя CMakeLists.txt.

Даже если пользуетесь Visual Studio или другой IDE, CMakeLists.txt все равно должен находиться в актуальном состоянии, чтобы проект можно было собрать на любой системе без помощи IDE.

Краткая справка по использованию Git с командной строки (Windows)

Некоторые шаги ниже вы, возможно, уже делали раньше.

  1. Устанавливаем Git на вашем компьютере (качаем отсюда).
  2. Открываем папку, где будет репозиторий, и выбираем в контекстном меню Open Git Bash here.
  3. Создаем SSH-ключ и привязываем его к аккаунту на GitHub, следуя инструкциям отсюда.
  4. Выполняем команду git clone <git-ссылка>. Git-ссылку можно получить на странице вашего репозитория (нажав кнопку Code).
  5. Эта команда создаст новую папку в текущей папке с названием вашего репозитория. В ней теперь лежит его локальная копия, с которой вы можете работать.

Как работать с локальной копией:

  1. Создаёте, удаляете, меняете файлы и папки, как вам нужно.
  2. Чтобы залить изменения на GitHub, открываете Git Bash в папке вашего репозитория и выполняете следующие команды:
    $ git add .
    $ git commit -m "Краткое описание изменений"
    $ git push
    
  3. Проверяем, что всё залито успешно, командой git status:
    $ git status
    On branch master
    Your branch is up to date with 'origin/master'.
    
    nothing to commit, working tree clean
    
    Если вывела такое, то всё ОК.
  4. Коммитить и пушить рекомендуется часто, как минимум один раз за каждый день, когда вы работали.

Рекомендуется самостоятельно изучить работу с Git более подробно.

About

Заготовка лабораторной по курсу "ООП (С )" ФИТ НГУ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published