Created
March 28, 2013 15:02
-
-
Save ernado/5263824 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// заголовочный файл | |
// ИУ5-22 Разумов Александр | |
// 28.03.2013 18:51 | |
#include <string> | |
#include <iostream> | |
/** | |
* шаблон для вывода значения переменной с пояснением. | |
* формат: var_name delimiter val \n | |
* пример: eq("Переменная",5); // переменная = 5 \n | |
* @param var_name название переменной | |
* @param val значение переменной | |
* @param newline наличие переноса строки | |
* @param delimiter разделитель (по умолчанию символ '=') | |
*/ | |
template <class T> void eq (std::string var_name, T val, bool newline = true, char delimiter = '=') | |
{ | |
std::cout << var_name << ' ' << delimiter << ' ' << val << " "; | |
if (newline) | |
std::cout << std::endl; | |
} | |
/** | |
* шаблон для ввода с последующим выводом | |
* @param var_name название переменной | |
* @param &val ссылка на переменную | |
* @param verbose необходимость подтверждать выводом введенного значения (по умолчанию отключена) | |
*/ | |
template <class T> void promt (std::string var_name, T &val, bool verbose = false) | |
{ | |
std::cout << "Введите " << var_name << ": "; std::cin >> val; | |
if (verbose) | |
eq("Введено", val); | |
} | |
/** | |
* функция для вывода названия подпункта с автоинкрементом | |
* @param section_name название подпункта | |
* @param v_m номер подпункта | |
* @param v_n номер пункта | |
*/ | |
void section(std::string section_name, int v_m = -1, int v_n = -1) | |
{ | |
static int n=4, m=4; | |
if (v_n != -1) | |
n = v_n; | |
if (v_m != -1) | |
m = v_m; | |
std::cout << '\n' << n << "." << m << ' ' << section_name << std::endl; m++; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment