time_t パラメータと任意の書式文字列を取り、それを書式設定する関数が必要です。私はこのようなものが欲しい:
std::string GetTimeAsString(std::string formatString, time_t theTime)
{
struct tm *timeinfo;
timeinfo = localtime( &theTime);
char buffer[100];
strftime(buffer, 100, formatString.c_str(), timeinfo);
std::string result(buffer);
return result;
}
ただし、私が直面している問題の 1 つは、バッファーの長さです。バッファ長として formatString * 4 のようなことを考えていました。しかし、バッファの長さを動的に設定することはできないと思いますか? 多分私は任意に大きなバッファを選ぶことができますか? 私はそれを一般的にする方法について少し立ち往生しています。
これを達成する関数をどのように書くことができますか?