最近的项目使用VC2003.net,不用MFC,而是用的Windows Forms,很奇怪,Managed C++是一个已经被微软抛弃的东西,VC2005也已经正式推出,CLI的东西正式替代Managed C++这个不伦不类的家伙。但是很奇怪竟然还有客户要用这个。而且,按照我的观念,如果是在.Net下面做东西,而且用到诸如Windows Forms之类的属于.Net特性的,那么不如用C#,C#是微软为.Net平台量身定做的语言,可以称之为.Net平台首选语言。虽然说.Net平台支持很多种语言,但是个人认为C#还是第一选择。
项目开始之初就觉得困惑,因为以前没有接触过Managed C++,哪些C++的东西可用,哪些不可用也不知道。在做INI文件读取的时候,彻底困惑了,对于字符串,因为__gc的缘故,无法很好的进行LPSTR之类的转换。搞了很久,搞出了下面的方法
TCHAR buffer[MAX_PATH];
GetModuleFileName(NULL, buffer, MAX_PATH);
String* strPath = buffer;
TCHAR strWK[MAX_PATH];
memset(strwk, 0x00, sizeof(strWK));
strPath = strPath->Substring(0, strPath->LastIndexOf("\\"));
strPath = strPath->Concat(strPath, S"\\Config.ini");
sprintf(strWK,"%s",strPath);
Int32 iMaxSize = GetPrivateProfileInt("LOG", "MAX_SIZE", 0, strWK);
看了觉得怪怪的。暂且用着吧。
Written on 2007/04/13 by Big Br0ther
Managed C++ 字符的困惑
Labels:
C++
0 Comments
Subscribe to:
Post Comments (RSS)
0 Responses to "Managed C++ 字符的困惑"
Post a Comment