📄 编程过程疑问及心得.txt
字号:
一、问题
1.如何在运行时获取应用程序的路径?GetModuleName();
2.
二、心得
1.文件文件中换行符的输出:ar.WriteString("\r\n");
2.使用HttpView视图给编程带来极大方便,输入输出都极方
便以后要多多使用。
3.类编写的要求。规范:函数分为属性设置Set_(),构造CClassName,
初始化 Init(),内置功能函数,属性获取函数Get~()。在函数申明
部分进行功能说明。在函数实现部分进行接口说明。
3.一行申明多个指针对象:CNode*pNode0,*pNode1,*pNode2;
4.引用调用可以方便的传递参数,并在函数外在进行修改。&m_cur
5.在对话框显示之前,不能用ID取得对话实体。
6.不要随便调用init函数,只在构造域析构中调用。
7.父类的Init()要调用子类的各个Init();
三、功能新增
1.功能完全封装。
2.文件读写独立。
3.本程序有两种输入文件。
一种是模型描述文件,其中是求解区域的定义
另一种是单元结点描述文件,其中对求解区域已经进行了划分。
4.单元类自己出自己的结构图形DrawFrame(CDC dc)。绘出自己的电位色图。
DrawFill(CDC dc);
5.改变默认新建文件名:加入CString AFX_IDS_UNTITLED="新文件"
6.堆对象,即new 生成的对象 ,必需在自己的类的析构函数中完成
内存回收。不要有多个回收入口 。
7.内存拷贝函数。memcpy(*pDestination,*pSource,sizeof(Class));
四、日志:
2004-5-19
8:00 用内存拷贝函数将CStructurc::GetDataFromModel进行了修改。
8:10 发现CExample内Init()内一处小bug.析构m_pElementArray时
还是用的m_pNodeArray.RemoveAll();
8:12 还是有bug.这里运行显示图形时出错。内存非法访问
9:00 修改求半带宽GetHalfBand();出错返回0
16:00实现显示的颜色变化。
16:20改进一个小bug,求最大值与最小值有点儿问题。
21:00实现重复结点的处理。
2004-5-20
8:00-12:00
实现图形的放缩和移动。
改正去重复结点中的一些bug,得到正确的结果及图形
问题,求解不够精确,速度太慢,要使用快速的解方程组的方法。
最速下降法,半带宽存储法。
CFileDialog();
dlg.GetFileExt(); //获取扩展名:txt
dlg.GetFileTitle(); //获取文件标题:filename
dlg.GetFileName(); //获取文件名:filename.txt
dlg.GetPathName(); //获取文件全路径名:c://path//path2//filename.txt
2004-5-20
18:00-20:00 实现了自定义矩形区域,形成数据体。
20:00 解决一处小bug,新建文件会出错。原来在structure的初始化
中,删除elementArray时,只删除了元素,却没有删除Array.
2004-5-21
8:00 建模器的功能:增加,修改和删除
9:00 改进操作友好性。当操作之后,界面自动换到相应的界面。
比如,建立数据体后,自动跳到,模型图形。求解后,自动跳到
显示等值图即云图。
9:42 刷新视图的技巧:
GetDocument()->UpdataAllViews(NULL)
和OnInitialUpdate();
前者只刷新一次,而后者用于初始刷新,会刷新界面两次。要小心使用。
10:21 发现bug,保存复杂形体出现问题,单元结点未更新??
原因:只处理了结构中的单元,而未处理模型中的单元。改进方法:
只需在处理结构单元的同时处理模型的单元就行了。
11:00 对复选框没有选择时进行了处理。GetCurSel()==-1.
12:00 对分段数的确定进行了自动处理。依据第一个矩形的信息。
捕获OnSetFocus消息。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -