【类型转化】托管转化为非托管

1. MangToUnMangString

void  MangToUnMangString(System::String  * managedStr, std::wstring &  unmangStr)
{
    
if ( managedStr == NULL )
    
{
        unmangStr.clear();
        
return;
    }


    
const wchar_t __pin* s = PtrToStringChars( managedStr );
    unmangStr.assign(s, managedStr
->Length);
}

 

2. MangToUnMangDateTime

void  MangToUnMangDateTime(System::DateTime &  managedDT, tm &  unmangDT)
{
    unmangDT.tm_sec   
= managedDT.Second;
    unmangDT.tm_min   
= managedDT.Minute;
    unmangDT.tm_hour  
= managedDT.Hour;
    unmangDT.tm_mday  
= managedDT.Day;
    unmangDT.tm_mon   
= managedDT.Month - 1;     // [1-12]
    unmangDT.tm_year  = managedDT.Year - 1900;   // [1-9999]
    unmangDT.tm_wday  = managedDT.DayOfWeek;     // [0-6]  [Sun-Sat]
    unmangDT.tm_yday  = managedDT.DayOfYear - 1// [1-366]
    unmangDT.tm_isdst = 0// always no?
}

你可能感兴趣的:(String,null,System)