自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 GDI绘制填充图

1、矩形填充图(1)、填充矩形图函数FillRect():用指定的画刷填充一个无边线的矩形区域(上边界和左边界)Void FillRect( LPCRECT lpRect, //将要填充的矩形 CBrush* pBrush //填充矩形所需的画刷)(2)、单色矩形填充函数void FillSolidRect( LPCRECT lpRect, //填充的矩形 COLORREF clr //填充矩形的颜色)(3)、实例...

2022-04-12 21:34:02 1568

原创 GDI基础知识

一、GDI的基础类1、CDC类:CObject的直接派生类(1)、用于获取DC句柄的函数GetDC():全新的临时默认DC,不能长期保存CDC* GetDC();(2)、用于获取DC安全句柄的函数GetSafeHdc():获取的DC句柄长期有效HDC GetSafeHdc();(3)、用于释放DC的函数Release DC():释放获取的DCint ReleaseDC(CDC* pDc);2、画笔类(1)、使用构造函数创建初始画笔CPen( int

2022-04-09 21:05:09 2031

原创 MFC个人信息显示

1、界面:2、控件的ID设置3、功能实现(1)、日期和时间的显示类向导中找到WM_TIMER添加OnTimer函数,设置两个计时器,分别显示日期和时间;void CButtonandlistDlg::OnTimer(UINT_PTR nIDEvent){ // TODO: 在此添加消息处理程序代码和/或调用默认值 CString m_strTime,m_strDate ; CTime theTime,theDate; int y,m,d,h,min,s; s..

2022-03-30 20:38:21 433 1

原创 MFC菜单类

给计算器加上菜单1、在Calculate.rc中添加资源类型Menu2、添加菜单名和功能键3、添加功能"+":添加函数void CCalculateDlg::OnCalAdd(){ // TODO: 在此添加命令处理程序代码 OnBnClickedAddButton();}“-”:添加代码void CCalculateDlg::OnAddDifit(){ // TODO: 在此添加命令处理程序代码 char Item4[10],Item5[10]; m_I

2022-03-26 21:07:02 196

原创 MFC 计算器应用程序

使用MFC AppWizard创建基于对话框的应用程序,实现算术加、减、乘和除的运算。1、添加控件(1)、4个Static Text:数据1、数据2、结果、“=”(2)、3个Edit Control:显示数字(3)、6个Button:+、-、*、/、clear、exit2、给Edit Control添加变量(double)3、给Button添加事件处理函数“+”:void CCalculateDlg::OnBnClickedAddButton(){ // TODO: 在此

2022-03-25 21:47:57 471

原创 window绘图

编写个程序,在屏幕上出现一个圆心沿正弦曲线轨迹移动的实心圆。要求每隔1/4周期,圆的填充色和圆的周边颜色都发生变化(颜色自己选取),同时,圆的半径在1/4周期之内由正弦曲线幅值的0.2 ~ 0.6倍线性增长。#include<Windows.h>#include<stdio.h>#include<string>#define Pi 3.1415926double dfRange=100.0; //正弦曲线的角度变量long i=0,j=0;long

2022-03-22 21:05:16 533

原创 Win32程序结构

#include<Windows.h>#include<stdio.h>#undef UNICODELRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM IParam) { HDC hdc; //设备描述表的句柄 switch(message) { case WM_PAINT: PAINTSTRUCT ps; hdc=BeginPaint(hWnd,&am.

2022-03-22 18:42:38 132

原创 构造函数与析构函数

#include<iostream>#include<stdio.h>using namespace std;using std::cout; class CPoint{ int x,y;public: CPoint(int xx,int yy){x=xx;y=yy;cout<<"构造函数被调用"<<endl;} //构造函数 CPoint(CPoint &p); .

2022-03-03 20:01:43 123

原创 nth_element()

1、头文件#include<algorithm>2、函数模板default (1) template <class RandomAccessIterator> void nth_element (RandomAccessIterator first, RandomAccessIterator nth, RandomAccessIterator last); custom (2) te

2021-11-23 20:52:39 602

原创 双端队列类模板和链表类模板

一、双端队列类模板双端队列(deque)是一种随机访问的数据类型,提供了在序列两端快速插入和删除操作的功能,它可以在需要的时候修改其自身的大小,主要完成标准c++数据结构中队列的功能。1、使用双端队列类模板需要创建deque对象,创建deque对象有以下几种方法:(1)、std::deque<type>name;(2)、std::deque<type>name(size);(3)、std::deque<type>name(size,value);(

2021-11-09 20:03:58 1091

原创 向量类模板

向量(vector)是一种随机访问的数组类型,提供了对数组元素的快速、随机访问,以及在序列尾部快速、随机的插入和删除操作。它是大小可变的向量,在需要时可以改变其大小。1、使用向量类模板需要创建vector对象,创建vector对象有以下几种方法。(1)、std::vector<type>name;该方法创建了一个名为name的空vector对象,该对象可容纳类型为type的数据。(2)、std::vector<type>name(size)该方法用来初始化具有si

2021-11-09 18:40:10 1201

原创 链表和链表类模板

1、链表设计一个简单的单项链表。链表的功能包括向尾节点添加数据、遍历链表中的节点和在链表结束时释放所有节点。定义一个链表类class cnode //定义一个节点类{public: cnode *m_pnext; //定义一个节点指针,指向下一个节点 int m_data; //定义节点的数据 cnode() { m_pnext=NULL;

2021-11-08 21:28:20 1912 1

原创 类型推导——关键字的使用

int a=3;auto b=a;变量b的类型被推导为int类型。同样的,使用auto关键字声明的数据可以被任何非空类型的数据、表达式和函数初始化。auto i=func(函数列表); //func的返回值为非空decltype也是实现这个特性的关键字,它的作用是可以获得某一表达式、函数或者数据的数据类型Type a=somevalue; //a的数据类型为Type,somevalue表示的是这一类型合法的值decltype(a) p=somevalue;.

2021-10-27 21:07:36 133

原创 右值引用传递函数

左值可被反复使用,例如变量a;右值使用后消亡,如值3。float func(float &f) //左值引用float func(float &&f) //右值引用#include<iostream>using namespace std;static float global=1.111f;void func(float &&f) //右值引用{ global +=f;}float getFloat(){ f...

2021-10-26 20:59:57 278

原创 数组指针与指针数组

int (*a)[3]数组指针,指向一个含有3个整型变量的数组int *a[3]指针数组,存储指针的数组,最多只能存储3个指针实例#include<iostream>using namespace std;void main(){ int a[3][4]; int (*b)[4]; //定义一个数组指针,可以指向一个含有4个整型变量的数组 int *c[4]; //定义一个指针数组,存储指针的数组,最多只能存储4个指.

2021-10-23 19:59:46 87

原创 汉诺塔问题

有3个立柱垂直矗立在地面,给这3个立柱分别命名为A、B、C。开始的时候立柱A上有n个圆盘,这n个圆盘大小不一,并且按从小到大的顺序依次摆放在立柱A上,如图所示。现在的问题是要将立柱A上的n个圆盘移到立柱C上,并且每次只允许移动一个圆盘,在移动过程中始终保持大盘在下,小盘在上。可以使用递归的思路来移动n个圆盘(1)、把1上的n-1个圆盘移到2上(2)、把1上的一个圆盘移到3上(3)、把2上的n-1个圆盘移到3上代码如下:#include<iostream>u..

2021-10-23 18:36:44 116

原创 巴斯卡三角

巴斯卡三角是两个边全输出1,三角形的内部用上行相邻两个数之和,各相加后的和数等分地放在三角形的各行内#include<iostream>#include<iomanip>using namespace std;long combi(int n,int r){ int i; long p=1; for(i=1;i<=r;i++) p=p*(n-i+1)/i; return p;}void main(){.

2021-10-23 18:12:09 253

原创 指向常量的指针、指针常量、指向常量的指针常量

指向常量的指针、指针常量、指向常量的指针常量1、指向常量的指针int a=52;const int *p=&a;可以直接通过变量a来修改内存内容,但通过该指针修改内存内容的操作是不被允许的。2、指针常量int a=13;int *const p=&i;*p=6;将const放在指针运算符*后,构成指针常量,无法改变它的内存指向,但是可以改变它指向内存的内容。3、指向常量的指针常量int a=14;int const* const p=&a

2021-10-20 21:15:17 215

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除