大四中软实习笔记20130301
1 重要概念
MFC是MS vc带的类库(应用程序框架)
.h文件被包含到.cpp里,所以会被间接编译了
VC6用了2个编译器:
编译.cpp C++
编译.rc 资源编译器------因为脚本语言善于 画 界面
2 控件(UI控件、UI组件)
2.1 画界面
静态文本
特殊用法:
让静态文本发生变化。
方法:修改控件ID----关联CString型变量
编辑框
注意:
默认是单行、不能识别回车
按钮
2.2 实现功能
2.2.1 关联变量
先修改界面图标的ID-----进入类向导------选成员变量的选项卡-----
2.2.2 关联函数
先修改界面图标的ID-----进入类向导------选消息映射的选项卡-----
代码:
void CMfc1Dlg::OnButtonAdd()
{
// TODO: Add your control notification handler code here
UpdateData();
int result=m_edit_num1+m_edit_num2;
CString str;
str.Format("%d",result);
AfxMessageBox(str);
}
知识点:
1 CString
是1个类
format成员函数---printf
CString型变量-----地址变量char *
str=str+" "+str2;
2 UpdateData
在类向导下 关联变量 时,不会自动进行界面值和关联变量间的传送
需要手动地传送
传送有方向
UpdateData(False);
题目:输入5个数,进行排序。
3 如何在MFC下删除控件、成员变量、成员函数
方法:与自己建立的顺利相反
好处:万无一失
4 链表
建立链表
代码(部分核心代码):
#include <stdio.h>
#include <string.h>
struct CNode
{
int data;
CNode* next;
};
int main()
{
CNode *head=NULL;
CNode *tail=NULL;
CNode *p=new CNode;
printf("请输入1个数:");
scanf("%d",&p->data);
p->next=NULL;
if(head==NULL)
{
head=p;
tail=p;
}
else
{
tail->next=p;
tail=p;
}
CNode *m=head;
while(m!=NULL)
{
printf("%d\n",m->data);
m=m->next;
}
return 0;
}