自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 资源 (2)
  • 收藏
  • 关注

原创 VS2019 获取工具或帮助打开失败,或者Visual Studio Installer找不到已安装的VS

VS2019 获取工具或帮助打开失败,或者Visual Studio Installer找不到已安装的VS找不到已安装组件或者获取工具和功能失败,是因为下载缓存page找不到了1.安装完vs2019后删除了缓存page文件,这个目前的办法只能重新安装vs20192.page路径被修改。默认installer只能在第一次安装时设置路径,若要修改路径,可以从注册表操作更改注册表路径 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup\cach

2020-06-23 23:28:18 11791 9

转载 set_difference && set_union && set_intersection

STL set中有set_union(取两集合并集)、set_intersection(取两集合交集)、set_difference(取两集合差集)。#include "stdafx.h"#include <iostream>#include <algorithm>#include <vector>#include <functional&gt...

2018-06-06 09:30:59 551

转载 SDH、MSTP、OTN和PTN的区别和联系

SDH、MSTP、OTN和PTN的区别和联系 首先要说的是TDM的概念,TDM就是时分复用,就是将一个标准时长(1秒)分成若干段小的时间段(8000),每一个小时间段(1/8000=125us)传输一路信号; SDH系统的电路调度均以TDM为基础,所以看到很多人说SDH业务就是TDM业务,就是传统的电路调度,是有理论依据的; 但在SDH大红大紫的时候,另一场战争以太网和ATM(不是取...

2018-04-03 14:25:27 1972 1

转载 了解CObject 和 CRuntimeClass

CObject和CRuntimeClass是MFC中两个非常重要的类/结构,绝大部分MFC类都是以CObject做为基类, CRuntimeClass结构同CObject密不可分,了解它们对于深入理解MFC具有重要意义。一、CRuntimeClass结构要理解CObject,我们先来看一下CRuntimeClass这个在MFC中至关重要的一个结构。 每个从CObject中派生的类都有有一个CRun

2017-11-02 14:45:16 740

原创 使用BOOST::Interprocess完成内存共享与同步

http://blog.csdn.net/great3779/article/details/7226388 http://blog.csdn.net/great3779/article/details/7240271 http://blog.chinaunix.net/uid-28595538-id-5068065.html 匿名互斥量举例 想象两个进程需要往一个共享内存中的循环缓冲区中写

2017-10-27 12:35:47 4313 1

转载 C/C++中产生随机数(rand,srand用法)

计算机的随机数都是由伪随机数,即是由小M多项式序列生成的,其中产生每个小序列都有一个初始值,即随机种子。(注意: 小M多项式序列的周期是65535,即每次利用一个随机种子生成的随机数的周期是65535,当你取得65535个随机数后它们又重复出现了。)我们知道rand()函数可以用来产生随机数,但是这不是真正意义上的随机数,是一个伪随机数,是根据一个数(我们可以称它为种子)为基准以某个递推公式推算出来

2017-10-27 10:26:22 408

转载 C/C++编写服务程序

Windows 服务被设计用于需要在后台运行的应用程序以及实现没有用户交互的任务。为了学习这种控制台应用程序的基础知识,C(不是C++)是最佳选择。本文将建立并实现一个简单的服务程序,其功能是查询系统中可用物理内存数量,然后将结果写入一个文本文件。最后,你可以用所学知识编写自己的 Windows 服务。当初我写第一个 NT 服务时,我到 MSDN 上找例子。在那里我找到了一篇 Nigel Thomp

2017-09-22 17:14:47 4982

原创 初学Python备忘录

一、选择合适的IDE IDLE是Python自带的IDE,在初学Python时很适用,因为这时的代码不多,如果只是想尽快写出几行代码来,这是最简便的方式。而第三方的PyCham,也很好用,更适合编写一个项目或一定数量的code Pycharm设置视频 http://v.youku.com/v_show/id_XODMyMzM1NzQ4.html Pycharm教程 http://blog

2017-09-13 23:06:55 1000

原创 Ice框架简介及Vs2013安装Ice 3.7.0步骤及实例

ICE是什么?ICE是ZEROC的开源通信协议产品,它的全称是:The Internet Communications Engine,翻译为中文是互联网通信引擎,是一个面向对象的中间件,支持C++、Java、C#、VB、Python等,客户和服务器可以用不同的语言,可以运行在不同的操作系统和机器架构上,支持TCP/UDP。使我们能够以最小的代价构建分布式应用程序。ICE使我们专注于应用逻辑的开发,它

2017-08-30 22:42:43 9932 1

转载 使用位移转换二进制和十进制

//2to10int luagl_str2mask(const char *str) { int i, j; int mask = 0; int size = (int)strlen(str); for(i = 0, j = 0; j < size; i++) { if(str[i] == '1') { mask

2017-08-29 13:03:25 1079

转载 VS2010 项目属性的默认包含路径的两种设置方法

有两种方法可以设置vs2010的默认包含路径 软件名称:Visual Studio 2010 Ultimate VS2010中文旗舰版附可用KEY软件大小:2.5GB更新时间:2015-01-07方法一: 点击“视图->属性管理器”,在打开的属性管理器中选择Microsoft.Cpp.Win32.user打开 打开后将出现如下图所示:

2017-07-29 23:39:19 1592

转载 零基础IP子网划分详解

在学习IP子网划分前,首先的明白以下几个基础概念:1、IP地址组成                              IP地址组成示意图 IP地址由32位二进制组成,32位二进制分成了4字节,每字节8位,字节之间用符.(点)分隔,为了方便人们记忆,经常需要转换成十进制数字显示,每字节最大为255(十进制)即二进制表示为11111111(8个1)。如255.255

2017-07-27 00:34:22 9659 10

转载 转换到 COFF 期间失败: 文件无效或损坏和VS2010不能创建项目的解决办法

不知怎么本来编译好好的VS2010环境,忽然出现“转换到COFF 期间失败:文件无效或损坏”的链接错误。花了好多天,试了好多方法,最终解决了这个问题。现在罗列一下这几种解决方案:方案1:         点击“项目”-->“属性”--> “清单工具”,         然后选择"输入和输出’--> ‘嵌入清单’,将后面的‘是’改成‘否’就可以了方案2:在VS

2017-07-19 22:04:43 598

转载 MFC总结之CListCtrl用法及技巧

本文根据本人在项目中的应用,来谈谈CListCtrl的部分用法及技巧。当初学习时,查了很多资料,零零碎碎的作了些记录,现在主要是来做个总结,方便以后查阅。主要包括以下十三点内容:基本操作、获取选中行的行号、复选框操作、动态设置选中行的字体颜色、设置选中行的背景颜色、禁止拖动表头、让第一列居中显示、设置行高与字体、虚拟列表技术、点击表头时进行归类、向上与向下移动、动态调整大小问题、避免闪烁问题。

2017-07-19 17:19:38 1855

转载 gvim常用的配置及插件 -windows

接触vim也已经有一年多了,期间也用过一段时间的SourceInsight,SourceInsight是Windows下一款不错的查看代码的软件。利用它可以迅速的了解一个大型程序的结构。后来在Linux下进行了一段时间的程序开发,就回到vim上了,经过一段时间的接触,发现vim越来越好用,后来在Windows上也就基本上全用gvim了。在这篇文章里我主要介绍一些我自己认为比较有用的一些快捷键和

2017-07-13 09:45:52 5907

转载 使用Windows API PostThreadMessage进行线程间消息通信

相信好多人都听过这个Windows API:PostThreadMessage,今天终于有时间来详细的研究一下,据我所知好多的公司在面试的时候都会提到这个API,因为常写代码的人一定会知道这个API,通过这个提问,可以考察一个人对细节的掌握程度。不多说了,开始正题。如下函数原型From MSDN:BOOL WINAPI PostThreadMessage(_In_ DWORD idThre

2017-07-06 19:07:46 1312

转载 sqlite查看所有表名及字段名,及判断是否存在的方法

sqlite查看所有表名及字段名1.   查询与判断表查询sqlite中所有表,可用如下sql语句。原理是,sqlite中有一个内建表sqlite_master,这个表中存储这所有自建表的表名称等信息。select name fromsqlite_master where type='table' order by name;我们可以通过如下语句查看这个内建表的所有记录sele

2017-07-05 13:49:50 3781

转载 vim常用命令总结

vim 选择文本,删除,复制,粘贴文本的选择,对于编辑器来说,是很基本的东西,也经常被用到,总结如下:v 从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束。V 从光标当前行开始,光标经过的行都会被选中,再按一下V结束。Ctrl + v 从光标当前位置开始,选中光标起点和终点所构成的矩形区域,再按一下Ctrl + v结束。ggVG 选中全部的文本,

2017-06-13 13:54:31 885

转载 C++文件读写详解(ofstream,ifstream,fstream)

在看C++编程思想中,每个练习基本都是使用ofstream,ifstream,fstream,以前粗略知道其用法和含义,在看了几位大牛的博文后,进行整理和总结:这里主要是讨论fstream的内容:[java] view plain copy print?#include   ofstream         //文件写操作 内存写入存储设备

2017-05-12 17:39:13 572

转载 内联(Inline)什么时候使用

(1)什么是内联函数?内联函数是指那些定义在类体内的成员函数,即该函数的函数体放在类体内。(2)为什么要引入内联函数?当然,引入内联函数的主要目的是:解决程序中函数调用的效率问题。另外,前面我们讲到了宏,里面有这么一个例子:#define ABS(x) ((x)>0? (x):-(x))当++i出现时,宏就会歪曲我们的意思,换句话说就是:宏的定义很容易产生二意性。  我们可以看到宏有一些难以避免的

2017-04-29 18:54:09 4740

转载 c++运算符重载总结

c++的一大特性就是重载(overload),通过重载可以把功能相似的几个函数合为一个,使得程序更加简洁、高效。在c++中不止函数可以重载,运算符也可以重载。由于一般数据类型间的运算符没有重载的必要,所以运算符重载主要是面向对象之间的。1.一般运算符重载在进行对象之间的运算时,程序会调用与运算符相对应的函数进行处理,所以运算符重载有两种方式:成员函数和友元函数。成员函数的形式比较简单,就是

2017-03-20 10:21:44 368

转载 32位C/C++程序移植到64位系统时需要注意的问题

概述从32位到64位,根本性的区别在于两种数据类型发生了变化:long和pointer。在32位环境下,顾名思义,两者长度都是32位,也就是4个字节;而在64位环境下,都是8个字节。所以,当你把pointer或者long型数据赋给int型时,会发生数据截断(data truncation)。 32位与64位数据模型之间的区别32位应用的数据模型我们称作ILP32(之所以这样

2016-03-11 18:05:38 5607

转载 利用内存映射文件处理大文件

摘要:本文通过内存映射文件的使用来对大尺寸文件进行访问操作,同时也对内存映射文件的相关概念和一般编程过程作了较为详细的介绍。  引言  文件操作是应用程序最为基本的功能之一,Win32 API和MFC均提供有支持文件处理的函数和类,常用的有Win32 API的CreateFile()、WriteFile()、ReadFile()和MFC提供的CFile类等。一般来说,以上这些函数可以满足大

2016-02-22 14:39:15 724

转载 win32程序启用控制台(控制台文件名:conout$,conin$,conerr$)

做win32窗口程序的时候,有时还是希望在控制台下输入输出一些信息。特别是VC的TRACE()宏虽然不错,但是输出在VC的debug窗口下。里面有些杂乱的信息,看起来还是很不爽。1。最原始的分配控制台,获得句柄,再输出    AllocConsole() ;    HANDLE hd = GetStdHandle(STD_OUTPUT_HANDLE) ;    WriteC

2015-10-22 16:08:40 2167

原创 随笔小录

1.文件操作(查找)查找文件,我们使用struct _finddata_t ,它是用来存储文件信息的结构体,包括文件属性,大小,创建时间,最后访问时间,最后修改时间,调用对应函数_findfirst、_findnext和_fineclose。这些函数和结构体在的头文件中_findfirst获取查找满足通配条件的第一个文件,将信息存储至_finddata_t 结构体,并返回唯一查

2015-08-28 15:31:17 427

转载 VS项目属性的一些配置项的总结(important)

以下内容为“原创”+“转载”首先,解决方案和项目文件夹包含关系(c++项目):VS解决方案和各个项目文件夹以及解决方案和各个项目对应的配置文件包含关系,假设新建一个项目ssyy,解决方案起名fangan,注意解决方案包括项目,此时生成的最外层目录为fangan代表整个解决方案的内容都在这个文件夹内。在这个fangan文件夹内包含有fangan.sln的解决方案配置文件和一个ssyy

2015-07-09 19:06:52 657

转载 vs2010自动生成的文件解析

SDF文件和ipch文件夹: visual studio 2010 中新建一个项目会同时建立一个ipch目录与sdf文件,即使你删掉它,再次打开工程时还是会重新建立。动辄30、50M的容量让我们心里很不爽。其实这是2010的一个新功能,与智能提示,错误提示,代码恢复、团队本地仓库等等息息相关的东西。如果大家觉得很不爽可以关掉它。Tools —— Options —— Text Editor

2015-07-09 19:05:20 918

转载 vc链接静态库的时候要注意的问题

vc工程与被链接的静态库(*.lib)文件之间要保持一致:例如:  是共享模式使用MFC dll还是静态模式使用MFC dll?是多线程还是单线程?是调试模式还是release模式?涉及的项目属性配置  /MDd   与 /MTd   /MD /MT如果不一致,在链接阶段会报告错误,如:

2015-07-09 14:16:48 1087

转载 C++中的抽象类以及接口的区别联系

抽象类是特殊的类,不能被实例化(将定义了纯虚函数的类称为抽象类);除此以外,具有类的其他特性; 重要的是抽象类可以包括抽象方法,这是普通类所不能的,但同时也能包括普通的方法。 抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们。 另外,抽象类可以派生自一个抽象类,可以覆盖基类的抽象方法也可以不覆盖,如果不覆盖,则其派生类必须覆盖它们。 虽然不能定义抽象类的实例,但是可

2015-05-22 18:59:37 578

转载 Hudson插件之按主题分类

按主题管理插件源代码管理Hudson本身支持Subversion、CVS以及下列插件:  BitKeeper Plugin — 为Hudson添加BitKeeper(Linux 内核开发人员在全球使用的主要源代码工具)支持。 Visual SourceSafe Plugin — 该插件集成微软的VSS到Hudson。 Gi

2015-01-23 01:05:12 1089

转载 STL中的vector,list,deque,map,set的区别

在STL中基本容器有: string、vector、list、deque、set、mapset 和map都是无序的保存元素,只能通过它提供的接口对里面的元素进行访问set:集合, 用来判断某一个元素是不是在一个组里面,使用的比较少map:映射,相当于字典,把一个值映射成另一个值,如果想创建字典的话使用它好了底层采用的是树型结构,多数使用平衡二叉树实现,查找某一值是常数时间,遍历起来

2014-09-09 13:39:36 485

转载 正确释放Vector的内存

当vector、string大量插入数据后,即使删除了大量数据(或者全部都删除,即clear) 并没有改变容器的容量(capacity),所以仍然会占用着内存。今天在看微博的时候, 有人提出了一个对于Vector内存泄露的疑问( Link)。博主采用 Vector存储一些数据,但是发现在执行 clear() 之后内存并没有释放,于

2014-09-01 10:38:01 575

转载 WideCharToMultiByte和MultiByteToWideChar函数的用法

为了支持Unicode编码,需要多字节与宽字节之间的相互转换。这两个系统函数在使用时需要指定代码页,在实际应用过程中遇到乱码问题,然后重新阅读《Windows核心编程》,总结出正确的用法。WideCharToMultiByte的代码页用来标记与新转换的字符串相关的代码页。MultiByteToWideChar的代码页用来标记与一个多字节字符串相关的代码页。常用的代码页由CP

2014-08-07 15:28:14 514

转载 重载OnEraseBkgnd()函数防止屏幕闪烁问题

在使用VC进行绘图时,最郁闷的就是屏幕闪烁问题。有时只能使用双缓冲去解决,当然更多的时候是去忍受。有没有什么这种的方法?有,那就是重载OnEraseBkgnd()函数。该函数控制重绘图的背景刷新,默认将窗口用系统背景颜色填充,即用白色将窗口刷一遍。这就产生的严重的闪烁效果,有时看到屏幕白的一条一闪而过,非常不爽。如果将该函数返回值设为TRUE,即不进行背景重绘,虽然屏幕的刷新仍然会闪烁,但

2014-08-04 09:37:43 1228

转载 MFC给按钮添加图片

一,首先建立位图句柄[cpp] view plaincopy// 方法一:加载非资源图片  HBITMAP   hBitmap;   hBitmap = (HBITMAP)::LoadImage(   NULL,   "E://a.bmp",                           // 图片全路径  IMAGE_

2014-07-29 15:57:09 938

原创 ReadString在UNICODE/多字节下中文乱码的解决办法

用CStdioFile类中的ReadString()方法可以从文件中读取一行,但是在Unicode下,读取的内容有误,同时也无法将中文利用WriteString()写入文件。原因就在于读取文件时是按照 ascii 方式读取的,而直接设定字符串时,是按照unicode 方式读取的。若使得读取文件时按照 Unicode 方式读取,则需要添加:setlocale( LC_CTYPE, "

2014-07-16 22:14:10 4344 1

转载 常用函数----字符串长度计算

字符串的长度通常是指字符串中包含字符的数目,但有的时候人们需要的是字符串所占字节的数目。常见的获取字符串长度的方法包括如下几种。1.使用sizeof获取字符串长度sizeof的含义很明确,它用以获取字符数组的字节数(当然包括结束符\0)。对于ANSI字符串和UNICODE字符串,形式如下:sizeof(cs)/sizeof(char)  sizeof(ws)/sizeof(wc

2014-07-07 19:32:15 1692

转载 SHELLEXECUTEINFO 和 ShellExecuteEx的使用

使用SHELLEXECUTEINFO和ShellExecuteEx,我也主要是在cab包的安装时使用的。基本上是这样使用的,如下:      SHELLEXECUTEINFO ShellInfo;                   memset(&ShellInfo, 0,sizeof(ShellInfo));     Shel

2014-07-06 23:17:07 577

转载 【C++专题】static_cast, dynamic_cast, const_cast探讨

 首先回顾一下C++类型转换:C++类型转换分为:隐式类型转换和显式类型转换第1部分. 隐式类型转换又称为“标准转换”,包括以下几种情况:1) 算术转换(Arithmetic conversion) : 在混合类型的算术表达式中, 最宽的数据类型成为目标转换类型。 int ival = 3;double dval = 3.14159;

2014-07-05 16:16:07 438

转载 内存分配方式,堆区,栈区,new/delete/malloc/free

1.内存分配方式内存分配方式有三种:[1]从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。[2]在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。[3]从

2014-07-05 15:57:57 501

空空如也

空空如也

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

TA关注的人

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