c++编程
yuan_4715
这个作者很懒,什么都没留下…
展开
-
ATL CLR MFC Win32 常规 的区别
ATL CLR MFC Win32 常规 的区别win32,mfc,clr这些控制台应用程序有什么区别啊? clr是.NET的程序mfc就是把win32 C++化了--------------------------------------------------ATL用于编写COM程序,CLR是.NET的公共语言运行库,MFC是指MFC类库,MFC程序是用这些类库做出的程序,WIN32常规就是不用MFC,使用API函数编的程序。----------------------------------转载 2011-03-22 22:05:00 · 3212 阅读 · 0 评论 -
字符集编码与 C/C++ 源文件字符编译
locale与字符集locale,中文有时翻译成“现场”,还不如叫英文的locale好,它的意思是“一套和地域有关的习惯而形成的程序运行上下文”,它由很多方面 (category) 组成,比如:某个地区的人们习惯怎样表示他们的货币金额 (LC_MONETARY) ,是用 "$100",还是用 "¥100";习惯怎么表示十进制多位数 (LC_NUMERIC) ,是每一千位进行分隔 "100,000",还是每一万位进行分隔 "10,0000";习惯怎么表示日期时间 (LC_TIME) ,是日-月-年的方式 "3转载 2011-04-22 11:14:00 · 3410 阅读 · 0 评论 -
static __inline__ 和 extern __inline__
<br />static __inline__ 和 extern __inline__inline函数有两种声明形式,一种是static __inline__,另一种是extern __inline__,inline不都是要展开的么,那么这两种形式有什么不同呢?还是只是形式上的不同?如果一个函数既是inline又是static,如果所有对函数的调用都能被展开在调用者里面,并且这个函数的地址从来没有被使用过,那么这种 情况下不存在对这个函数本身汇编代码的引用。这时,GNU CC实际上并不输出这个函数的汇编代码转载 2011-04-21 18:38:00 · 5736 阅读 · 0 评论 -
#pragma
<br /> <br />在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。<br /> 一般格式其格式一般为: #Pragma Para。其中Para 为参数,下面来看一些常用的参数常用参数 <br />#pragmamessage 参数转载 2011-04-21 18:15:00 · 460 阅读 · 0 评论 -
C++操作.ini配置文件的API
<br /><br />概述<br />在程序中经常要用到设置或者其他少量数据的存盘,以便程序在下一次执行的时候可以使用,比如说保存本次程序执行时窗口的位置、大小、一些用户设置的 数据等等,在 Dos 下编程的时候,我们一般自己产生一个文件,由自己把这些数据写到文件中,然后在下一次执行的时候再读出来使用。在 Win32 编程中当然你也可以这样干,但 Windows 已经为我们提供了两种方便的办法,那就是使用注册表或者 ini 文件(Profile)来保存少量数据。本文中先介绍一下 .ini 文件的使用。<b转载 2011-04-15 14:37:00 · 4264 阅读 · 0 评论 -
dll简介及创建和使用方法
<br /><br />【转】如何用VC++创建及调用DLL<br />(2010-12-01 13:57:33)<br />一、前言<br />自从微软推出16位的Windows操作系统起,此后每种版本的Windows操作系统都非常依赖于动态链接库(DLL)中的函数和数据,实际上 Windows操作系统中几乎所有的内容都由DLL以一种或另外一种形式代表着,例如显示的字体和图标存储在GDI DLL中、显示Windows桌面和处理用户的输入所需要的代码被存储在一个User DLL中、Windows编程所需要的转载 2011-04-15 16:24:00 · 594 阅读 · 0 评论 -
常见数据结构转换
<br /><br />常用数据类型使用转换详解 <br /> 先定义一些常见类型变量借以说明<br /> int i = 100;<br /> long l = 2001;<br /> float f=300.2;<br /> double d=12345.119;<br /> char username[]="女侠程佩君";<br /> char temp[200];<br /> char *buf;<br /> CString str;<br /> _variant_t v1;<b转载 2011-04-15 16:21:00 · 1454 阅读 · 0 评论 -
声明和定义的区别
++程序通常由许多文件组成,为了让多个文件访问相同的变量,c++区分了声明和定义。 变量的定义(definition)用于为变量分配存储空间,还可以为变量指定初始值。在程序中,变量有且仅有一个定义。 声明(declaration)用于向程序表明变量的类型和名字。定义也是声明:当定义变量的时候我们声明了它的类型和名字。可以通过使用extern声明变量名而不定义它。不定义变量的声明包括对象名、对象类型和对象类型前的关键字extern。 extern声明不是定义,也原创 2011-03-28 15:54:00 · 450 阅读 · 0 评论 -
什么是头文件
<br />在C语言家族程序中,头文件被大量使用。一般而言,每个C++/C程序通常由头文件(header files)和定义文件(definition files)组成。头文件作为一种包含功能函数、数据接口声明的载体文件,用于保存程序的声明(declaration),而定义文件用于保存程序的实现 (implementation)。而且 .c就是你写的程序文件。 一般在一个应用开发体系中,功能的真正逻辑实现是以硬件层为基础,在驱动程序、功能层程序以及用户的应用程序中完成的。头文件的主要作用在于调用库功能,对转载 2011-03-27 21:29:00 · 8330 阅读 · 0 评论 -
什么是stdafx.h
<br /> include "stdafx.h"是预编译处理器把stdafx.h文件中的内容加载到程序中来。stdafx.h 1名称的英文全称为:Standard Application Fram Extend 所谓头文件预编译,就是把一个工程(Project)中使用的一些MFC标准头文件(如Windows.H、Afxwin.H)预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。 预编译头文件通过编译stdafx.c转载 2011-03-27 21:13:00 · 676 阅读 · 0 评论 -
理解namespace(命名空间)
<br />很多初学C++的人,对于C++中的一些基本的但又不常用的概念感到模糊,命名空间(namespace)就是这样一个概念。<br /> C++中采用的是单一的全局变量命名空间。在这单一的空间中,如果有两个变量或函数的名字完全相同,就会出现冲突。当然,你也可以使用不同的名字,但有时我们并不知道另一个变量也使用完全相同的名字;有时为了程序的方便,必需使用同一名字。比如你定义了一个变量string user_name, 有可能在你调用的某个库文件或另外的程序代码中也定义了相同名字的变量,这就会出现冲突。转载 2011-03-23 13:24:00 · 1034 阅读 · 0 评论 -
什么是STL(Standard Template Library,标准模板库)
三十分钟掌握STL标准模板库STL被内建在你的编译器之内。 在C++标准中,STL被组织为下面的13个头文件:、、、、、、、、、、、和。算法大家都能取得的一个共识是函数库对数据类型的选择对其可重用性起着至关重要的作用。举例来说,一个求方根的函数,在使用浮点数作为其参数类型的情况下的可重用性肯定比使用整型作为它的参数类性要高。而C++通过模板的机制允许推迟对某些类型的选择,直到真正想使用模板或者说对模板进行特化的时候,STL就利用了这一点提供了相当多的有用算法。它是在一个有效的框架中完成这些算法转载 2011-03-23 12:15:00 · 2797 阅读 · 1 评论 -
C/C++编译过程的9个阶段
<br />标准C和C++将编译过程定义为9个阶段(Phases of Translation):<br /> <br />1.字符映射(Character Mapping)<br /> 文件中的物理源字符被映射到源字符集中,其中包括三字符运算符的替换、控制字符(行尾的回车换行)的替换。许多非美式键盘不支持基本源字符集中的一些字符,文件中可用三字符来代替这些基本源字符,以??为前导。但如果所用键盘是美式键盘,有些编译器可能不对三字符进行查找和替换,需要增加-trigraphs编译参数。在C++程序中,转载 2011-04-22 11:19:00 · 1009 阅读 · 0 评论