Основы и методология программирования 2016/2017/168-2 — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Семинары)
(09.11.2016)
Строка 73: Строка 73:
 
* Список методов контейнера std::vector<T>: http://en.cppreference.com/w/cpp/container/vector
 
* Список методов контейнера std::vector<T>: http://en.cppreference.com/w/cpp/container/vector
 
* Сравнение передачи параметров в функцию по ссылке и по значению: https://www.cs.fsu.edu/~myers/c++/notes/references.html
 
* Сравнение передачи параметров в функцию по ссылке и по значению: https://www.cs.fsu.edu/~myers/c++/notes/references.html
 +
* Параметры фукнций со значением по умолчанию: http://www.learncpp.com/cpp-tutorial/77-default-parameters/

Версия 19:41, 12 ноября 2016

Общая информация

Репозиторий с кодом с семинаров: https://github.com/akashin/HSE_CPP_Seminars

Почта: kashin.andrej@gmail.com

Семинары

02.11.2016

Linux

How to install Linux?

Useful Unix tools:

  • Navigation: ls, cd,
  • Work with file system: cp, mv, rm
  • Work with files: cat, head, tail, sort, uniq, wc
  • Interaction between programs: pipes, redirection, <, >, >>, stdin, stdout, stderr
  • Text editors and IDEs: vim, Atom, CLion

Get C++ compiler:

  • OSX: brew install homebrew/versions/llvm38
  • Ubuntu: sudo apt-get install clang-3.8

Copiling code:

  • Compilers: clang++, g++
  • Useful flags: -Wall -Wextra -Wconvertion

Running code:

  • ./a.out < input.txt

Installing cpplint:

Zsh

Замена стандартного интерпретатора Bash, гибкий в настройке, поддерживает много полезных плагинов

Vim
Сайты для изучения UNIX инструментов

C++

Ссылка на контест: https://official.contest.yandex.ru/contest/3154/problems/

03.11.2016

Fun facts

09.11.2016