template<typename ... Args>
std::string string_format(const std::string& format, Args ... args)
{
size_t size = snprintf(nullptr, 0, format.c_str(), args ...) + 1; // Extra space for '\0'
if (size <= 0) {
throw std::runtime_error("Error during formatting.");
}
std::unique_ptr<char[]> buf(new char[size]);
snprintf(buf.get(), size, format.c_str(), args ...);
return std::string(buf.get(), buf.get() + size - 1); // We don't want the '\0' inside }
}
std::string save_path = string_format("d:\\test%d.tif", count++);
https://gist.github.com/kuonzZ/14c0ee6a21950f8b46f50ae7053c0873
C++ 메모리 관리 (0) | 2021.04.29 |
---|---|
template method 기본 인자에 대한 형식 연역 (0) | 2021.04.29 |
template method (0) | 2021.04.29 |
전방 선언 Forward Declaration (0) | 2020.09.25 |
타입추론 (0) | 2020.06.22 |
댓글 영역