Posted
These routine handlers are meant to store multiple functions/routines of similar purposes / objectives.
There's a argumented and a unargument routine handler class. github repo: https://github.com/expressiongz/routine-handlers
example usage:
#include <iostream>
#include <Windows.h>
#include "argumented_routine_handler.h"
#include "routine_handler.h"
int main()
{
argumented_routine_handler<void(const char*, const char*)> arg_routine_handler{};
routine_handler<void()> reg_routine_handler{};
std::tuple args{ "exprssn's", "argumented routine handler!" };
arg_routine_handler.insert_routine("print", std::make_pair([](const char* str1, const char* str2)
{
std::cout << str1 << " " << str2 << "\n";
}, &args));
arg_routine_handler.call_routine<const char*, const char*>("print");
std::cout << "argumented routine handler object currently has " << arg_routine_handler.return_routine_map_sz() << " routine(s)\n";
reg_routine_handler.add_routine("set_console_title", []
{
SetConsoleTitleA("exprssn's routine handlers");
std::cout << "set_console_title called\n";
});
reg_routine_handler.add_routine("unset_console_title", []
{
SetConsoleTitleA("sxspectgzzly.");
std::cout << "unset_console_title called\n";
});
std::cout << "routine handler object currently has " << reg_routine_handler.return_routine_map_sz() << " routine(s)\n";
reg_routine_handler.call_routine("set_console_title");
Sleep(1750);
reg_routine_handler.call_routine("unset_console_title");
system("pause");
return 0;
}
(disclaimer: I made this at around 7-8 am with no sleep whatsoever)
https://media.discordapp.net/attachments/1044764388546068510/1051935933836050482/Signature_4.png
Users viewing this thread:
( Members: 0, Guests: 1, Total: 1 )
Cancel
Post