#include <cstdlib>
#include <string>
#include <direct.h>
int createDescktopDir(const char* dname) {
// корректная обработка ошибок за вами
const char* env_homedrive = std::getenv("HOMEDRIVE");
const char* env_homepath = std::getenv("HOMEPATH");
std::string desctoppath = std::string(env_homedrive) + env_homepath + "\\Desktop\\" + dname;
return _mkdir(desctoppath.c_str());
}
template< int Size>
A<Size> make_A( std::initializer_list<T> init_list )
{
A<init_list .size()> a( init_list ); // size() - constexpr
return a;
}
auto a = make_A( {...} );