|
在学ACE日志方法中:ACE_Log_Msg
#include "stdafx.h"
#include "ace/Log_Msg.h"
//using namespace std;
void foo(void);
int ACE_TMAIN(int , ACE_TCHAR *[] )
{
ACE_TRACE(ACE_TEXT("main"));
ACE_DEBUG((LM_INFO,ACE_TEXT("%I Hi Mom\n")));
foo();
ACE_DEBUG((LM_INFO,ACE_TEXT("%I goodnight\n")));
int i;
scanf("%d",&i);
return 0;
}
void foo (void)
{
ACE_TRACE(ACE_TEXT("foo"));
ACE_DEBUG((LM_INFO,ACE_TEXT("%I howdy Pardnet\n")));
}
以上程序能如书上示例正常显示结果,但若是加入全局单体实例时,却不能正常调用,如加入这一句话,以设定日志级别
ACE_Log_Msg->priority_mask(LM_DEBUG | LM_NOTICE,ACE_Log_Msg::PROCESS);//这一句是书上原句
则报错为
error C2143: syntax error : missing ';' before '->'
对其另再进行实例化
ACE_Log_Msg * Ace_pri = new ACE_Log_Msg;
则能正常运行显示,ACE_Log_Msg应该为ACE自动管理的全局单体实例, 请问是否有哪里配置不对呢。。。
用的是VC6.0 ACE版本为5.4
望达人大大们能不吝赐教! |
|