- PVSM.RU - https://www.pvsm.ru -
Друзья! В данной статье мы бы хотели рассказать про кроссплатформенную коллекцию утилитных C++ компонентов CUtils.
CUtils — это довольно полезный инструмент при разработке кроссплатформенного программного обеспечения на языке программирования C++.
В первой версии этой коллекции содержатся компоненты, которые были необходимы в разработке игрового движка Case Engine, такие как SystemConfiguration, INIParser, Notification и т. д.
Вы можете скачать репозиторий уже с собранными файлами под Windows, а можете самостоятельно собрать библиотеку из исходников.
1. скачайте официальный репозиторий коллекции с GitHub -
https://github.com/case-tech/CUtils-Win [1]
И подключите Include и Lib к вашему проекту:
2.. Установите исходники библиотеки с GitHub [2]
И соберите её с помощью команд:
mkdir Out
cd Out
cmake ..
cmake --build .
Хэширование по алгоритму SHA-256
С помощью библиотеки CUtils можно реализовать хэширование данных через заголовок Hashed.hpp:
#include <Hashed.hpp>
using namespace CUtils;
int main()
{
Hashed hasher;
std::string originalText = "Hello, world!";
std::string filename = "example";
hasher.HashAndSave(originalText, filename);
std::string savedHash = hasher.ReadHashFromFile(filename + ".hash");
return 0;
}
INI Parser
С помощью заголовка INIParser.hpp можно реализовать парсинг данных из конфигурационного файла .ini:
#include <INIParser.hpp>
using namespace CUtils;
int main()
{
INIParser parser("config.ini");
if (parser.Load())
{
std::string value = parser.GetValue("Settings", "Resolution");
std::cout << "Resolution: " << value << std::endl;
parser.SetValue("Settings", "Resolution", "1920x1080");
parser.Save();
}
else
{
std::cerr << "Failed to load INI file." << std::endl;
}
return 0;
}
NoisePerlin
В CUtils уже есть готовая реализация алгоритма Шума Перлина:
#include <NoisePerlin.hpp>
#include <iostream>
using namespace CUtils;
int main()
{
NoisePerlin perlin;
double value = perlin.Noise(1.0, 2.0);
std::cout << "Perlin Noise Value: " << value << std::endl;
return 0;
}
Notification
Вы можете реализовать вывод ошибок, предупреждений, информации с помощью заголовка Notification.hpp:
#include <Notification.hpp>
using namespace CUtils;
int main()
{
Notification::notify(Notifi
А остальное вы сможете посмотреть в нашей документации [3]
Ссылки
Наш GitHub [4]
Официальный сайт [5]
Автор: case-tech
Источник [6]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/c-3/401968
Ссылки в тексте:
[1] https://github.com/case-tech/CUtils-Win: https://github.com/case-tech/CUtils-Win
[2] исходники библиотеки с GitHub: https://github.com/case-tech/CUtils-Sources
[3] нашей документации : https://case-technologies.ru/Documents/Documentation%20for%20CUtils.pdf
[4] Наш GitHub : https://github.com/case-tech
[5] Официальный сайт : https://case-technologies.ru/
[6] Источник: https://habr.com/ru/articles/857398/?utm_source=habrahabr&utm_medium=rss&utm_campaign=857398
Нажмите здесь для печати.