Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ c++;,将任何类型的数据(模板T)打印到控制台_C++_Templates_Std - Fatal编程技术网

C++ c++;,将任何类型的数据(模板T)打印到控制台

C++ c++;,将任何类型的数据(模板T)打印到控制台,c++,templates,std,C++,Templates,Std,在我的代码中,我想实现一个将任何数据类型打印到控制台的函数。 函数始终接收一个字符串作为第一个参数,以及一个每次都可能变化的数据作为第二个参数 互斥记录器.h namespace Loggers { std::mutex m_mutex; template<typename T> void sharedLog(const std::string& message, T data) { std::lock_guard<std

在我的代码中,我想实现一个将任何数据类型打印到控制台的函数。 函数始终接收一个
字符串作为第一个参数,以及一个每次都可能变化的数据作为第二个参数

互斥记录器.h

namespace Loggers
{
    std::mutex m_mutex;
    template<typename T>
    void sharedLog(const std::string& message, T data)
    {
        std::lock_guard<std::mutex> locker(m_mutex);
        std::cout << message << data << std::endl;
    }
}
在编译时,我会遇到以下错误:


C2593运算符
问题是您正在调用
运算符问题是您正在调用
运算符调用函数时
T
是什么类型?@StackDanny应该是什么?请创建一个来向我们展示。另外,请复制粘贴该示例的完整错误输出。是否包含
?@StackDanny是的,我包含了,不幸的是,它只显示行号而不显示列调用函数时的
T
类型是什么?@StackDanny应该是什么?请创建一个来向我们显示。另外,请复制粘贴该示例的完整错误输出。是否包含
?@StackDanny是的,我包含了,不幸的是,它只显示行号而不显示列
#include "Mutex_Loggers.h"
/*other stuff*/
Loggers::sharedLog("IN THREAD: ", std::this_thread::get_id());
Loggers::sharedLog("IN APP CREATION ", nullptr);
Loggers::sharedLog("IN create_CtrApp_and_register ", {1,2,3});
std::ostream& operator<< (std::ostream &out, const T& arg);
friend std::ostream& operator<< (std::ostream &out, const T& arg);
str << a << b << c;