Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <vector>
- using namespace std;
- // создание структуры с именем S
- struct S {
- // перечисляем свойства
- int a, b;
- double c;
- string s;
- };
- // функция:
- // <тип возвращаемого значения> название (<тип параметра 1> название параметра 1,
- // <тип параметра 2> название параметра 2) { тело }
- int sum(int a, int b) {
- int c = a + b;
- return c; // возвращаем значение
- }
- // void - ничего не возвращаем
- // парметры передаются по ссылке, чтобы редактировать не локальные переменные, а именно те, которые передаются в ф-ю
- void my_swap(int& a, int& b) {
- int c = a;
- a = b;
- b = c;
- }
- // передаем вектор по сслыке, чтобы избежать долгого копирования значений
- // используем const, чтобы дать понять, что мы не собираемся редактировать содержимое вертора, он read-only
- int vector_sum(const vector<int>& v) {
- int s = 0;
- for (auto x : v) {
- s += x;
- }
- return s;
- }
- int main() {
- // пары pair<тип1, тип2>
- pair<int, string> x;
- x.first = 1; // задаем первое значение
- x.second = "second"; // задаем второе значение
- pair<int, int> y1 = { 1, 3 }; // конструируем пару
- pair<int, int> y2 = make_pair(1, 3); // конструируем пару
- vector<pair<int, string>> v; // создание вектора пар
- // создание вектора размера 20 с заполненными нулями векторами размера 30 внутри
- vector<vector<int>> vv(20, vector<int>(30, 0));
- // работа с структурами
- S a = { 1, 4, 5.6, "asd" }; // инициализация, соблюдаем порядок переменных
- a.s = "asdas"; // можем менять значения внутренних переменных
- vector<S> f(200, { 0, 0, 2.0, "start" }); // можем сделать вектор структур, никто не запрещает
- // способ поменять значения переменных местами
- int v1 = 0;
- int v2 = 10;
- swap(v1, v2);
- // v1 = 10, v2 = 0
- // преобразовать число в строку, необходимо подключить <string>
- string s = to_string(v1);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment