首页
学习
活动
专区
工具
TVP
发布

转载gongluck的CSDN博客

https://blog.csdn.net/gongluck93
专栏作者
149
文章
354116
阅读量
52
订阅数
[C++]:A*——A Star算法简介
A*算法 求最优解 算法一直维护两个表: Open和Close 将起点S加入Open中 将所有S可到达的点(障碍物以及位于Close表中的点均看成不可达)加入到Open中。将起点从Open中删去,并加入到Close中 ①从Open中删去F值最小的点Min,并将其加入到Close中 ②将Min点所有可到达的点加入Open中,并设这些点的父节点为Min。若某点已经在Open中,则比较其F值,若新路径F值较小,说明从Min走路更短,更新其父节点为Min;否则不更新此点 循环①②,直到Op
_gongluck
2018-03-13
1.8K0
Visual C++内存泄露检测工具(VLD)
简述 C/C++ 程序越复杂,内存的管理显得越重要,稍有不慎就会出现泄漏。如果内存泄漏不是很严重,在短时间内对程序不会有太大影响,这也使得内存泄漏问题有很强的隐蔽性,不易被发现。然而不管内存泄漏多么轻微,当程序长时间运行时,其破坏力是惊人的 - 从性能下降到内存耗尽,甚至会影响其他程序的正常运行。 VLD VLD(Visual Leak Detector)是一款用于 Visual C++ 的免费内存泄露检测工具。相比较其它内存泄露检测工具,它在检测到内存泄漏的同时,还具有如下特点: 可以得到内存泄漏点的调用
_gongluck
2018-03-13
5.4K0
A*,那个传说中的算法
周日的下午,微信simplemain,老王又来找大伙儿聊技术了~~ 今天想跟大家聊的,是我们经常用到,但是却让大家觉得十分神秘的那个算法:A* 。 想必大家都玩儿过对战类的游戏,老王读书那会儿,中午吃
_gongluck
2018-03-09
1.2K0
YV12转RGB24的计算转换和bmp(dib)文件的显示保存
最近又接触到图像处理这一块,翻查到一年前自己写的代码http://blog.csdn.net/gongluck93/article/details/52813042,发现有点看不懂了! 所以自己又整理了一波(YV12转RGB24,显示和保存dib): #include "stdafx.h" /******************************************************************* * Copyright(c) 2017 * All rights rese
_gongluck
2018-03-09
1.3K0
黑暗的内存管理
黑暗的内存管理 很多人对 C 语言深恶痛绝,仅仅是因为 C 语言迫使他们在编程中必须手动分配与释放内存,然后通过指针去访问,稍有不慎可能就会导致程序运行运行时出现内存泄漏或内存越界访问。 C 程序的内存泄漏只会发生在程序所用的堆空间内,因为程序只能在堆空间内动态分配内存。NULL 指针、未初始化的指针以及引用的内存空间被释放了的指针,如果这些指针访问内存,很容易就让程序挂掉。 除了堆空间,程序还有个一般而言比较小的栈空间。这个空间是所有的函数共享的,每个函数在运行时会独占这个空间。
_gongluck
2018-03-08
1.1K0
MFC自定义控件
需要在MFC实现自定义控件功能,网上搜集找的如下方法实现: 以下是步骤说明。 一、自定义一个空白控件  1、先创建一个MFC工程        NEW Project-->MFC-->MFC Application-->name:  “CustomCtr”-->Application Type选择“Dialog based”。  2、在窗口中添加一个自定义控件        Toolbox-->“Custom Control”-->属性-->class随便填写一个控件类名“CMyWin”, 这个名字用
_gongluck
2018-03-08
1.7K0
AdjustWindowRect 与 SetWindowPos
这两个函数经常一起使用,所以放到一起讲: 1 AdjustWindowRect     函数功能:该函数依据所需客户矩形的大小,计算需要的窗口矩形的大小。计算出的窗口矩形随后可以传递给CreateWindow函数,用于创建一个客户区所需大小的窗口。     函数原型:BOOL AdjustWindowRect(LPRECT lpRect ,DWORD dwStyle,BOOL bMENU);     参数:     lpRect:指向RECT结构的指针,该结构包含所需客户区域的左上角和右下角的
_gongluck
2018-03-08
1.7K0
野指针分析
1. 野指针的概念   所谓的野指针,就是说指针指向的那块内存,你没有合法操作的权限,也就是指针指向非法的内存空间,这样的指针就叫做野指针。 2. 野指针产生的原因 (1) 指针变量未初始化         任何指针变量刚被创建时不会被自动置为NULL,它的缺省值是随机的,所以这块内存,所以指针变量在创建时,要么初始化让它指向一块合法的内存,要么置为NULL。 #include <stdio.h> #include <stdlib.h> int main(void) {      //i
_gongluck
2018-03-08
8890
统计字符串中的单词数目
//统计字符串中的单词数目——统计字符串中单词的数目,更复杂的话从一个文本中读出字符串并生成单词数目统计结果。 /* Test my2test,12test...?tesst hehe,dsf..e3
_gongluck
2018-03-08
1.6K0
初探WinInet网络api
//必须的头文件,而且要链接wininet.lib #include <WinInet.h> #define UM_SOCKET (WM_USER + 1) void CNetTimeDlg::OnBnClickedOk() { // TODO: 在此添加控件通知处理程序代码 // CDialogEx::OnOK(); // 使用winsocket,获取国际标准时间并设置系统时间 WSADATA WSAData = { 0 }; int iError = 0; iError = WSASta
_gongluck
2018-03-08
8140
如何用Doxgen制作chm格式文档
对程序员来说,在开发自己的接口时,制作一个easy-go的文档也是coding中必不可少的一步,而且是相当重要的一步,虽然国内很多程序员,现在都略过了这一步。 本文的前提是,大家已经在代码中写了符合生成注释文档的注释,关于注释的规则,可以参考百度文库里的一个文档 “使用Doxygen生成chm帮助文档使用详解”, 链接地址:http://wenku.baidu.com/view/110caf8002d276a200292e44.html 接下来,就开始我们的简单制作chm文档之旅吧,嘿嘿! 系统信息:win
_gongluck
2018-03-08
2.6K0
关于GetDC与GetWindowDC
关于GetDC与GetWindowDC GetDc函数:用于获得hWnd参数所指定窗口的客户区域的一个设备环境。 所获得的设备环境可以是通用、类或者私有类型,具体由指定窗口的类风格决定。对于通用设备环境,GetDc函数每次获取一个设备环境时都会用默认属性对它进行初始化。该函数获得的类和私有设备环境会与它们最后一次的设置保持一致。当设备环境不再需要时,应该调用ReleaseDC函数将其释放。    GetWindowDC函数:返回hWnd参数所指定的窗口的设备环境。 获得的设备环境覆盖了整个窗口(包括非客
_gongluck
2018-03-08
1.7K0
使用Jpeglib
/******************************************************************* * Copyright(c) 2017 * All rights reserved. * * 文件名称: Jpeg.cpp * 简要描述: 使用Jpeglib * * 创建日期: 2017-08-14 * 作者: gongluck * 说明: * * 修改日期: * 作者: * 说明: ********************
_gongluck
2018-03-08
1.1K0
C++中MFC Tab Control控件的使用详解
1. 新建一个MFC工程, 取名MyTab, 选择Dialog based, 然后Finish. 2. 删除对话框上默认添加的三个控件. 添加Tab Control控件并在Property属性中设置ID为IDC_TABTEST 在More Styles里勾上Bottom. 调速尺寸使其布满整个对话框, 我这边Tab Control的尺寸最后为164X203. 在ClassWizard为其添加变量, 变量名为m_tab. 类型为CTabCtrl. 3. 在对话框的初始化函数OnInitDialog里面添加如下
_gongluck
2018-03-08
3.1K0
C++中_onexit()用法简述
引问:main 主函数执行完毕后,是否可能会再执行一段代码? 答案:可以,可以用_onexit 注册一个函数,它会在main 之后执行。 知识了解: (1)使用格式:_onexit(int fun()) ,其中函数fun()必须是带有int类型返回值的无参数函数; (2)_onexit() 包含在头文件cstdlib中,cstdlib为c语言中的库函数; (3)无论函数_onexit() 放到main中任意位置,它都是最后执行。 程序举例分析: #include #include using n
_gongluck
2018-03-08
1K0
c++ 中__declspec 的用法
c++ 中__declspec 的用法 语法说明: __declspec ( extended-decl-modifier-seq ) 扩展修饰符: 1:align(#)    用__declspec(align(#))精确控制用户自定数据的对齐方式 ,#是对齐值。 e.g __declspec(align(32)) struct Str1{ int a, b, c, d, e; }; 【转】它与#pragma pack()是一对兄弟,前者规定了对齐的最小值,后者规定了
_gongluck
2018-03-08
3.2K0
程序的入口
操作系统装载应用程序后,做完初始化工作就转到程序的入口点执行。程序的默认入口点由连接程序设置, 不同的连接器选择的入口函数也不尽相同。在VC++下,连接器对控制台程序设置的入口函数是 mainCRTStartup,mainCRTStartup 再调用main 函数;对图形用户界面(GUI)程序设置的入口函数是 WinMainCRTStartup,WinMainCRTStartup 调用你自己写的 WinMain 函数。具体设置哪个入口点是由连接器的“/subsystem:”选项确定的,它告诉操作系统
_gongluck
2018-03-08
1.7K0
结构体字节对齐
      在用sizeof运算符求算某结构体所占空间时,并不是简单地将结构体中所有元素各自占的空间相加,这里涉及到内存字节对齐的问题。从理论上讲,对于任何变量的访问都可以从任何地址开始访问,但是事实上不是如此,实际上访问特定类型的变量只能在特定的地址访问,这就需要各个变量在空间上按一定的规则排列,而不是简单地顺序排列,这就是内存对齐。       内存对齐的原因:       1)某些平台只能在特定的地址处访问特定类型的数据;       2)提高存取数据的速度。比如有的平台每次都是从偶地址处读取数据,对
_gongluck
2018-03-08
1.6K0
拉丁猪文字游戏
拉丁猪文字游戏——这是一个英语语言游戏。基本规则是将一个英语单词的第一个辅音音素的字母移动到词尾并且加上后缀-ay(譬如“banana”会变成“anana-bay”)。可以在维基百科上了解更多内容。 #include <iostream> #include <string> using namespace std; bool PigLatin(string& str) { string::size_type pos = str.find_first_of("aeiou"); string sub =
_gongluck
2018-03-08
1.4K0
C++拷贝构造函数(深拷贝,浅拷贝)
对于普通类型的对象来说,它们之间的复制是很简单的,例如:   int a=88;   int b=a;   而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。   #include   using namespace std;   class CExample {   private:   int a;   public:   CExample(int b)   {   a=b;   }   void Show
_gongluck
2018-03-08
1.1K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档