转载文章
yjkwf
这个作者很懒,什么都没留下…
展开
-
五大内存分区
五大内存分区 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区(malloc)、全局/静态存储区(static) 和 常量存储区(const)。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个de原创 2010-03-15 15:23:00 · 477 阅读 · 0 评论 -
Visual Studio 2008 中程序路径配置
在调试 Visual Studio 2008 程序时,经常有一些动态链接库(即 dll 文件)需要加载到工程里,这样才能依赖第三方库进行程序调试。这些动态链接库,往往都是测试版本或是开发中的版本,或者会有若干个版本;这个时候,如果直接把 dll 所在目录加到 PATH 里,则会有潜在冲突的危险;如果直接拷贝到 Visual Studio 的目录下,假如测试工程太多,每次有新版本的动态链原创 2016-06-14 14:14:24 · 360 阅读 · 0 评论 -
获取网卡mac地址
#include "stdafx.h"#include//#include#include"iphlpapi.h"#pragma comment(lib,"Iphlpapi.lib")int _tmain(int argc, _TCHAR* argv[]){ PIP_ADAPTER_INFO pAdapterInfo; PIP_ADAPTER_INFO pAdapter=NULL原创 2015-11-18 17:49:29 · 639 阅读 · 0 评论 -
visual studio 解决方案项目结构部署和配置
在实际的企业项目,一个解决方案里面由几个项目组成:产生静态或者动态链接库的项目、测试用例、产生执行文件的项目、当然还有一些开源的第三方库等。此时,我们需要对解决方案作一定的配置,使得解决方案结构清晰、层次分明,也便于项目维护和多人协作。一、VS中项目设置中使用的宏:SolutionDir --- 解决方案目录ProjectDir --- 项目目录ProjectName ---原创 2015-09-07 10:47:58 · 1483 阅读 · 0 评论 -
C++ 中通过GetAdaptersInfo获取网卡配置和Ip地址信息
一台机器上可能不只有一个网卡,但每一个网卡只有一个MAC地址,而每一个网卡可能配置有多个IP地址;如平常的笔记本电脑中,就会有无线网卡和有线网卡(网线接口)两种;因此,如果要获得本机所有网卡的IP和MAC地址信息,则必须顺序获得每个网卡,再依次获取其信息等;在windows sdk中,用IP_ADAPTER_INFO结构体存储网卡信息,包括网卡名、网卡描述、网卡MAC地址、网卡IP等,该结构体的主转载 2015-08-28 16:39:52 · 300 阅读 · 0 评论 -
AfxLoadLibrary 和 LoadLibrary的区别
For AfxLoadLibrary, and serving as the dll search rule: When no path is specified, the function searches for the file in the following sequence:The directory from which the application loaded.Th转载 2015-06-01 13:08:57 · 3005 阅读 · 0 评论 -
C/C++常见面试题
1、const有什么用途?(1)限定符声明变量只能被读(2)必须初始化,否则导致编译错误,const常量有数据类型,而宏常量没有数据类型,编译器可以对前者进行类型安全检查,而对后者只能进行字符替换,并且在字符替换时可能发生意料不到的错误。const int i=5;//合法const int j;//非法,导致编译错误,没有初始化(3)在另一文件中引用const常量,只能被引用转载 2013-03-22 18:07:45 · 625 阅读 · 0 评论 -
Source Insight 常用设置和快捷键大全
1.括号配对高亮:“在前括号左侧,后括号左侧” 双击鼠标左键,可以选定匹配括号和其中内容(2.让{ 和 } 不缩进:Options -> Document Options -> Auto Indenting -> Auto Indent Type 选 Simple还有:让{ 和 } 不缩进: options->document options->auto indent 去掉inde转载 2015-02-12 13:02:53 · 1528 阅读 · 0 评论 -
巧用头文件,多文件编译少发愁 | 浅谈实用“StdAfx” !
本文旨在分享我在编程过程中对于多文件编译的一点经验。文中谈到了因头文件重复包含而引起的重复定义问题及其解决方案,另外由此引伸出我对于StdAfx的相关认识。 如果你同我一样,有颗强烈的好奇心;如果你同我一样,对使用AppWizard(应用程序向导)创建程序模板时生成的“StdAfx.cpp”、“StdAfx.h”感到疑惑不解。那么我会很开心,不要误会,我是开心于下面这些文字也许对你原创 2010-03-05 08:55:00 · 1991 阅读 · 3 评论 -
为什么使用C++托管扩展?
微软既要考虑Visual C++的兼容性,又要让传统C++语言具备足够的能力开发.NET应用程序,于是在新版本的Visual C++中,引入了C++托管扩展。在整个Visual Studio开发套件中,微软为了迎合.NET应用程序开发模式的要求,几乎对每个工具都作了或大或小的改进。其中,VB的变革力度应用微软各种软件产品之最。但是太大的变革往往会带来兼容性问题,特别是新版本的VB宣称其只能开发托管的应用程序(也就是.NET应用程序),所以对开发人员来讲,这肯定意味着过去使用VB编写的代码在新版本转载 2010-10-20 16:01:00 · 655 阅读 · 0 评论 -
变量的定义与声明的区别(转)
我们在程序设计中,时时刻刻都用到变量的定义和变量的声明,可有些时候我们对这个概念不是很清楚,知道它是怎么用,但却不知是怎么一会事,下面我就简单的把他们的区别介绍如下: 变量的声明有两种情况: (1) 一种是需要建立存储空间的(定义、声明)。例如:int a在声明的时候就已经建立了存储空间。 (2) 另一种是不需要建立存储空间的(声明)。例如:extern int a其转载 2010-05-04 15:33:00 · 444 阅读 · 0 评论 -
C++内存池的概念及其实现
内存池(Memory Pool)是一种内存分配方式。 通常我们习惯直接使用new、malloc等API申请分配内存,这样做的缺点在于:由于所申请内存块的大小不定,当频繁使用时会造成大量的内存碎片并进而降低性能。 内存池则是在真正使用内存之前,先申请分配一定数量的、大小相等(一般情况下)的内存块留作备用。当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继续申请新的内存。这样转载 2013-05-10 16:09:47 · 629 阅读 · 0 评论 -
SQLite 入门教程
SQLite 是一个自持的(self-contained)、无服务器的、零配置的、事务型的关系型数据库引擎。因为他很小,所以也可以作为嵌入式数据库内建在你的应用程序中。SQLite 被应用在 Solaris 10操作系统、Mac OS 操作系统、iPhone 和 Skype 中。QT4 、Python 、 PHP 都默认支持 SQLite ,Firefox Amarok 等流行的应用程序在内部转载 2012-05-31 18:02:27 · 845 阅读 · 0 评论 -
什么是.NET框架?转载。
http://bennypan1980.blog.163.com/blog/static/87919823201001802334815/原创 2010-10-20 15:52:00 · 1035 阅读 · 0 评论 -
CButtonST类公共接口函数
CButtonST类公共接口函数以下是CButtonST类的所有公共成员函数(函数名按音序排列先后):CButtonST::DrawBorderDWORD DrawBorder(BOOL bDrawBorder = TRUE, BOOL bRepaint = TRUE)注释:因为CButtonST的默认显示风格是平面按钮。调用此函数用来显示按钮边框。参数:bDrawBorder: 值原创 2010-05-10 15:24:00 · 844 阅读 · 2 评论