导航

08 2021 档案

摘要:1.子线程中建立一个窗口 为了在后面比较这两个函数,先使用win32 windows程序中建立子线程,在子线程中建立一个窗口。 (1)新建一个 win32 windows应用程序 (2)定义子窗口的窗口响应函数 LRESULT CALLBACK SubWndProc(HWND hWnd, UINT 阅读全文

posted @ 2021-08-23 23:07 Hosseini 阅读(1325) 评论(1) 推荐(0)

摘要:在项目中修改路径参数后重算发生了内存访问违例的错误,经过调试,发现是下面这一行出的错 surfaceContourBuilder1.Commit(); 经过反复调试,发现这个东西不能随便放,不可以想当然,也不能是修改一个参数就Commit一下,最简单保险的方式是录制宏,严格按照宏的写法修改。 另外, 阅读全文

posted @ 2021-08-21 17:20 Hosseini 阅读(754) 评论(0) 推荐(0)

摘要:以C#开发为例,通常先用【操作记录】功能录制关键代码,得到一个.cs文件。 (1)可以直接使用【播放操作记录】的方式执行该.cs文件。 (2)可以建立一个C#的类库工程,将上述.cs文件加载进去,添加必要的引用的dll文件,编译得到dll文件,运行该dll。如下图(快捷键Ctrl+U) 这种方式需要 阅读全文

posted @ 2021-08-21 15:34 Hosseini 阅读(760) 评论(0) 推荐(0)

摘要:项目中要获取路径参数,网上大多是C++的例子,而本项目是用C#写的,探索了下,记录下。 以获取某条路径的刀具号为例,其他参数依此类推。 using System; using System.Collections.Generic; using System.Linq; using System.Te 阅读全文

posted @ 2021-08-21 13:57 Hosseini 阅读(1206) 评论(0) 推荐(0)

摘要:一、并行和并发: 并行:多个任务在同一时刻同时执行。 并发:多个任务顺序执行,不是同时。 二、进程和线程: 进程是系统分配资源的最小单位,线程是cpu执行任务的最小单位。 操作系统中,每个进程都有自己的地址空间和一个执行线程,这个线程通常叫做主线程。 对于单核CPU而言,同一时刻只能执行一个线程。每 阅读全文

posted @ 2021-08-19 17:23 Hosseini 阅读(177) 评论(0) 推荐(1)

摘要:工作中需要做一个脚本编辑器的工具,用于代码补全、语法高亮、错误提示等功能,可以直接使用开源控件Scintilla, 网上有一些MFC的多文档使用Scintilla的例子,项目中使用的是对话框,自己实现了一遍,记录一下。 具体过程和上一篇中的win32中使用Scintilla基本一样,主要要注意的是: 阅读全文

posted @ 2021-08-16 10:29 Hosseini 阅读(618) 评论(1) 推荐(0)

摘要:同其他的cam软件一样,catia可以使用配置好的后处理文件输出相应的G代码文件, 也可以输出相应的刀位文件。 下图中的1选择的是后处理文件;下图2种设置的是输出刀位文件的格式。 输出G代码: 选择【NC Code】,即将使用后处理输出G代码。 下面这个位置也可以指定后处理: 后处理存放的位置: 例 阅读全文

posted @ 2021-08-14 14:07 Hosseini 阅读(3301) 评论(0) 推荐(0)

摘要:第一步:建立win32程序 第二步:添加头文件,导入lib库 LoadLibrary(_T("SciLexer.dll")) 这样在后面就可以使用类名 Scintilla 来创建窗体。 第三步:创建 Scintilla 窗体的代码 在 BOOL InitInstance(HINSTANCE hIns 阅读全文

posted @ 2021-08-10 14:59 Hosseini 阅读(621) 评论(0) 推荐(0)

摘要:一、size和capicity size是实际长度,capicity是预留空间,请看下面的例子。 (1)str 是个空字符串,它的 size 为0,但它的 capicity 为15 (2)继续往下调试走: str 被赋予了字符串 "123456" ,它的 size 变成了6 ,capicity还是1 阅读全文

posted @ 2021-08-07 08:36 Hosseini 阅读(1060) 评论(0) 推荐(0)

摘要:C++中构建一个对象,有多种方式,例如下面的Person类: class Person { public: Person(){}; ~Person(){}; }; 1.调用构造函数: Person per1 = Person(); 2.调用拷贝构造函数,使用一个已有的对象创建: Person per 阅读全文

posted @ 2021-08-03 13:38 Hosseini 阅读(252) 评论(0) 推荐(0)

摘要:一、拷贝构造函数 当类没有定义拷贝构造函数的时候,编译器会默认提供一个,这个拷贝函数是浅拷贝。 如果该类中含有指针,可能会发生内存泄漏,见下面的例子: class Test { public: int *p; Test(){ p=new int; }; ~Test(){ delete p; }; } 阅读全文

posted @ 2021-08-02 17:04 Hosseini 阅读(2010) 评论(0) 推荐(0)