如何使用win32编写通用警报消息

如何使用win32编写通用警报消息

本文介绍了如何使用win32编写通用警报消息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 

我想把这个方法扩展为更通用的东西,它应该接受任何类型的参数,并使用MessageBox code> void alert(char * item)
{
MessageBox(NULL,item,Message,MB_OK | MB_ICONINFORMATION);
}

任何人都可以帮助?

解决方案
  #include< sstream> 
template< typename T>
void alert(T item)
{
//这接受所有支持operator<<
std :: ostringstream os;
os<<项目;
MessageBoxA(NULL,os.str()。c_str(),Message,MB_OK | MB_ICONINFORMATION);
}

//现在你需要专门化宽字符
void alert(const wchar_t * item)
{

MessageBoxW ,item,Message,MB_OK | MB_ICONINFORMATION);
}


I just want to expand this following method into something more generic, which should accept any kind of argument and display it using MessageBox():

void alert(char *item)
{
  MessageBox(NULL, item,  "Message", MB_OK | MB_ICONINFORMATION);
}

Can anyone help?

解决方案
#include <sstream>
template<typename T>
void alert(T item)
{
//this accepts all types that supports operator <<
  std::ostringstream os;
  os << item;
  MessageBoxA(NULL, os.str().c_str(),  "Message", MB_OK | MB_ICONINFORMATION);
}

//now you need specialization for wide char
void alert(const wchar_t* item)
{

  MessageBoxW(NULL, item,  "Message", MB_OK | MB_ICONINFORMATION);
}

这篇关于如何使用win32编写通用警报消息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-12 14:25