自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 H3C 交换机配置静态聚合(trunk/access)模式

目标:H3C 交换机配置静态聚合(trunk/access)模式硬件配置:1.三层核心交换机:S7005e2.二层交换机:S5120 v2S7005e过程:创建vlan(如果已经存在可跳过此步骤)[H3C]vlan 20设置名称(Test可自行更改)[H3C-vlan20]name Test 返回系统视图[H3C-vlan20]qu进入vlan 20[H3C]interface vlan 20修改vlan标签(Test可自行更改)[H3C-Vlan-interface20]de

2022-05-04 23:42:23 10462

原创 MFC GDI+ 自绘透明按钮学习实现

整理一下自己学习自绘透明按钮的实现和代码;在各个搜索网站上游走发现子类化自绘按钮的资料很多,但是大多年头很久远了。问题整理:1.子类化自绘控件背景透明如何达成,1.1.主窗口ON_WM_CTLCOLOR()消息设置背景透明(不易于扩展与维护);HBRUSH CMFCApplication2Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor){ HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWn...

2021-03-31 15:29:43 654

原创 记.关于delete char* char[]的越界错误

BasetMD5* pTest = CreatMD5(); CString str("123456789"); //注意:以下n和len的值大小不同,n是按字符计算的,len是按字节计算的 int n = str.GetLength(); //获取宽字节字符的大小,大小是按字节计算的 int len = WideCharToMultiByte(CP_ACP, 0, str, str.GetLength(), NULL, 0, NULL, NULL); //为多字节字符数组申请空间,数组大小.

2020-12-23 13:53:54 670

原创 C++单例模式

#pragma onceclass EventMutex{public: static EventMutex& GetInstance();private: // 禁止外部构造 EventMutex(); // 禁止外部析构 ~EventMutex() ; // 禁止外部复制构造 EventMutex(const EventMutex&) = delete; // 禁止外部赋值操作 const EventMutex& operator=(const E

2020-11-28 18:18:43 95

原创 A星寻路算法C++源码

#pragma once#include"pch.h"#include <vector>using namespace std;struct LatticeInfo{ int m_X, m_Y, m_H; float m_G, m_F; BOOL m_Move; LatticeInfo* m_LatticeObj; LatticeInfo() :m_X(NULL), m_Y(NULL), m_G(NULL), m_F(NULL), m_H(NULL), m_Move(FAL

2020-07-21 03:36:17 700

原创 A星寻路地图二维数组转化

CImage Image;HINSTANCE hIns = AfxGetInstanceHandle();Image.LoadFromResource(hIns, IDB_MAPBMP);//可以本地加载地图图片int array[159][118]; //可以使用动态数组 int** arrayint x = NULL, y = NULL;for (int i = 0; i < Image.GetWidth(); i ++)//如需要加大数组坐标,调整 i 和n(最好是取模){ for

2020-07-18 14:09:12 934

原创 vector指针与对象

vector<Type*> type::vector<Type指针> vector对象访问vector.at();vector<Type>* type::vector<Type对象> vector指针访问vector->at();vector<Type*>* type::vector<Type指针> vector指针访问vector->at();扩展:vector<vector<Type*&g

2020-07-17 00:42:50 522

转载 面向对象编程的弊端是什么?

面向对象编程的弊端是什么?如果一个模块根本没有扩展的需求,没有多人协作的需求,花时间达成OCP又有什么意义呢?设计类关系的时候忘记了OOP的初心,可能就会写出很多没有帮助的类,白白浪费人力和运行效率。所以,假如所有代码都是你一个人维护,没有什么扩展的需求,那么多用一些switch也未尝不可;假如你的代码是要被别人使用或者使用了别人的代码,OOP很可能就是你需要用到的工具。除了OOP,Type class和Duck Typing都是可以帮助你达成OCP原则的工具。当然,如果你使用的语言是Java,这两种工具

2020-06-21 19:19:57 471

原创 自己理解的面向对象

/*多态: 1.子类必须重载父类虚函数//2.必须通过父类指针new子类对象3.父类指针new自身调用自身的虚函数4.父类指针new子类调用子类重载虚函数5.父类指针new任何对象不可调用子类函数(非重载虚函数或实函数)继承: 1.子类继承父类是为了更好的复用代码2.缺点是以代码(方法)为中心,接口混乱不易维护3.以方法(属性)抽象对象4.适宜个人小程序制作纯虚类:1.函数不可定义,只能声明2.以接口来抽象对象3.继承的子类需要重载函数(非必须)4.纯虚类更好的为多态服务

2020-06-07 17:00:39 87

MySQL库文件(X86)(X64)

MySQL库文件(X86)(X64)包含include文件夹,版本日期为MySQL2015,需要的直接下载

2020-11-29

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

TA关注的人

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