C ++-'localtime'此函数或变量可能不安全 [英] C++ - 'localtime' this function or variable may be unsafe
问题描述
出于学习目的,我正在用C ++编写一个简单的日志记录类。我的代码包含一个返回今天日期字符串的函数。但是,每当调用 localtime时,我都会遇到编译器错误。
I am writing a simple logging class in C++ for learning purposes. My code contains a function that returns a string of today's date. However, I get a compiler error whenever 'localtime' is called.
std::string get_date_string(time_t *time) {
struct tm *now = localtime(time);
std::string date = std::to_string(now->tm_mday) + std::to_string(now->tm_mon) + std::to_string(now->tm_year);
return date;
}
我尝试使用 #define _CRT_SECURE_NO_WARNINGS
。它不起作用,并出现相同的错误。我还尝试将 _CRT_SECURE_NO_WARNINGS
放在项目属性的预处理器定义中。
I have tried using #define _CRT_SECURE_NO_WARNINGS
. It didn't work and the same error appeared. I also tried putting _CRT_SECURE_NO_WARNINGS
inside the preprocessor definitions in the project properties. This gave an unresolved external error.
有人对做什么有任何想法吗?
Does anyone have any ideas on what to do?
推荐答案
尝试在 #include
任何其他头文件之前 #define _CRT_SECURE_NO_WARNINGS
Try to #define _CRT_SECURE_NO_WARNINGS
before #include
any other header files, like the following code
#define _CRT_SECURE_NO_WARNINGS
#include <ctime>
//your code
这篇关于C ++-'localtime'此函数或变量可能不安全的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!