`
文章列表
创建文件夹CreateDirectoryA(file, 0); char file[1024]; memset(file,0,1024); sprintf(file,"%s\\TradeData\\",g_pApplication->GetAppPath_str().c_str());// //判断配置文件是否存在 if (GetFileAttributesA(file) == INVALID_FILE_ATTRIBUTES) { CreateDirectoryA(file, 0); } 注:只能建一级目录
heap corruption detected错误解决方法调试方法以及内存管理相关 1、heap corruption detected http://vopit.blog.51cto.com/2400931/645980 heap corruption detected:after normal block(#xxx) at 0x xxxxxxxx crt detected that the application wrote to menory after end of heap buffer 这是典型的内存溢出错误,常在内存的delete处发生,而且一般在debug版本中可能出现 ...
edit control字体背景颜色 属性必须 readonly false

richedit2使用

richedit2使用 1) 必须导入dll HINSTANCE _hsRichDLL _hsRichDLL = NULL; //加载富文本dll TCHAR tmp[1024] = {0}; _stprintf(tmp, TEXT("%s\\riched20.dll"), g_pApplication->GetAppPath()); _hsRichDLL = ::LoadLibraryEx(tmp,NULL,LOAD_WITH_ALTERED_SEARCH_PATH); if (_hsRichDLL == NULL) { M ...
win32 edit control字体颜色 INT_PTR CALLBACK MainUI::MainUIProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { MainUI* pMainUI = (MainUI*)GetWindowLongPtr(hDlg, GWLP_USERDATA); switch (message) { case WM_CTLCOLOREDIT: { if ((HWND)lParam == GetDlgItem(pMainUI->GetHWND(),ID ...

c_str()

c_str() 注意很多时候是属性,还是函数。
VC中数字与字符串转换方法字符串转数字 1.CRT函数 ASCII UNICODE TCHAR          VS2005int atoi _wtoi   _tstoi _ttoi     _atoi_l _wtoi_llong atol _wtol _tstol _ttol     _atoi_l _wtoi_l__int64 _atoi64 _wtoi64 _tstoi64 _ttoi64 _atoi64_l _wtoi64_lfloat          _atoflt _atoflt_ldouble atof _wtof _tstof _ttof _atof_l _wt ...
C#笔记21:多线程之线程同步中的锁定lock、Monitor 1:什么是锁 2:如何选择锁定对象 3:如何锁定集合 4:Monitor 1:什么是锁      lock 语句可以用来确保代码块完成运行,而不会被其他线程中断。这是通过在代码块运行期间为给定对象获取互斥锁来实现的。 2:如何选择锁定对象      提供给 lock 关键字的参数必须为基于引用类型的对象,该对象用来定义锁的范围。在上面的示例中,锁的范围限定为此函数,因为函数外不存在任何对对象 lockThis 的引用。如果确实存在此类引用,锁的范围将扩展到该对象。严格地说,提供的对象只是用来唯一地标识由多 ...
TargetNullValue与FallbackValue TargetNullValue与FallbackValue都是BindingBase的属性。 TargetNullValue:获取或设置当源的值为 nullNothingnullptrunitnull 引用(在 Visual Basic 中为 Nothing) 时在目标中使用的值。 FallbackValue:获取或设置当绑定无法返回值或无法解析源路径时要使用的值。 下面代码中,我们在TextBlock中绑定一个Coutry值 <TextBlock x:Name="CountryValueTex ...
C:数组索引工作模式等同于指针 问题描述: 在C中,a[i]和i[a]是可以互换的,两个写法都能得出一样的结果。 成因分析: 在C中,对内存块而言,数组与指针是无差别的,就是说: a[i] = *(a + i) = *(i + a) = i[a]。
C/C++:三字母词用法(转) 三字母词表如下 1.??(      [         2.??<    {       3.??=     #        4. ??)     ]       5.??>     }       6.??/      \        7.??!     |         8.??`     ^ 9.??-    ~ printf( "What?\?!\n" );

变量赋值换行

变量赋值换行 ne="123456789012345678901234567890" 可以写成: ne="12345678901234567890" &_ "1234567890" Dim partDocument1 as partDocument 等价于 Dim partDocument1 as _ partDocument
起线程,注意事项,生命周期 //收到交易弹出公告 void TradeMainUI::OnTradePoputBulletin(const string& seq) { //启动线程处理以下消息 char *temp = new char[128]; strcpy(temp, seq.c_str()); HANDLE hHandle = CreateThread(NULL, 0, TradePoputBulletinThread, (void*)(temp), 0, NULL); CloseHandle(hHandle); } DWORD WINA ...
以ThreadStart方式实现多线程(转载) 3.1 使用ThreadStart委托 这 里先以一个例子体现一下多线程带来的好处,首先在Message类中建立一个方法ShowMessage(),里面显示了当前运行线程的Id,并使用 Thread.Sleep(int ) 方法模拟部分工作。在main()中通过ThreadStart委托绑定Message对象的ShowMessage()方法,然后通过 Thread.Start()执行异步方法。 1       public class Message 2       { 3           public void ShowMessage ...
C#之MemberwiseClone与Clone(转载) 1、MemberwiseClone 方法创建一个浅表副本,具体来说就是创建一个新对象,然后将当前对象的非静态字段复制到该新对象。如果字段是值类型的,则对该字段执行逐位复制。如果字段是引用类型,则复制引用但不复制引用的对象;因此,原始对象及其复本引用同一对象。 为了实现深度复制,我们就必须遍历有相互引用的对象构成的图,并需要处理其中的循环引用结构。这无疑是十分复杂的。幸好借助.Net的序列化和反序列化机制,可以十分简单的深度Clone一个对象。原理很简单,首先将对象序列化到内存流中,此时对象和对象引用的所用对象的状态都被保存到内存中。.N ...
Global site tag (gtag.js) - Google Analytics