c++&
文章平均质量分 83
liangshoulong
如果多吃鱼可以补脑让人变聪明的话,那么我至少得吃一对儿鲸鱼……:(
展开
-
学C++时要注意的
1.把C++当成一门新的语言学习(和C没啥关系!真的。); 2.看《Thinking In C++》,不要看《C++变成死相》; 3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看; 4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境,而我原创 2017-08-04 21:57:27 · 178 阅读 · 0 评论 -
c++ explicit关键字
1、c++中的explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?如果c++类的构造函数有一个参数,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型的数据转换为该类对象,如下面所示: class MyClass{public:MyClass( int num );}.原创 2017-08-04 22:01:05 · 145 阅读 · 0 评论 -
c++ __based关键字
__based关键字 该关键字主要用来解决一些和共享内存有关的问题,它允许指针被定义为从某一点开始算的32位偏移值,而不是内存种的绝对位置 举个例子: typedef struct tagDEMOSTRUCT { int a; char sz[10]; } DEMOSTRUCT, * PDEMOSTRUCT; HANDLE hFileMapping = CreateFileMappi原创 2017-08-04 22:01:08 · 526 阅读 · 0 评论 -
__cdecl __fastcall与 __stdcall 调用约定
__cdecl __fastcall与 __stdcall 调用约定__cdecl __fastcall与 __stdcall 调用约定: __cdecl __fastcall与 __stdcall,三者都是调用约定(Calling convention),它决定以下内容:1)函数参数的压栈顺序,2)由调用者还是被调用者把参数弹出栈,3)以及产生原创 2017-08-04 22:01:14 · 195 阅读 · 0 评论 -
(转)精通C++的定义
今日看到大把的同学的简历上都写着“精通c++”,”精通xxxx”,其实他们可能只是会写个helloworld,知道class是个关键字而已吧.其它的我都不是太懂,唯独c++研究过些时日了,自己心中的精通为何也早有定义:1)知道所有关键字的含义,这个是最基本的.有很多很少用的也必须知道..比如auto,mutable,explicit,volatile...1.5)通读过一遍 ISO C++标准2)原创 2017-08-04 22:02:11 · 175 阅读 · 0 评论 -
实实在在说多态(C++篇)--目前找到的说的最清楚的一篇文章
实实在在说多态(C++篇) 星期一, 01月 7th, 2008 转载:http://blog.csdn.net/guanwl/archive/2007/03/12/1526698.aspx 1.什么是多态 多态是C++中的一个重要的基础,可以这样说,不掌握多态就是C++的门个汉。然而长期以来,C++社群对于多态的内涵和外延一直争论不休。大有只见树木不见森林之势。多态到底是怎么回事呢?说原创 2017-08-04 22:02:57 · 248 阅读 · 0 评论 -
关于fatal error RC1107: invalid usage; use RC /? for Help
vs2005、2008编译apache2.2.10发现此错误,google下发觉有两种情况会出现这类错误,一种是浏览资源文件时,另外一种是编译资源文件时,分别解决如下:第一种,修改vc option设置的默认包含文件,如果包含有绝对路径,修改“/”为“//”或者“\”;第二种,修改工程属性的Resources-》General-》Preprocessor Definitions设置,包含空原创 2017-08-04 22:03:03 · 1201 阅读 · 0 评论 -
模板特化的一个例子
// test.cpp // xp + vc-7_1 // cl -EHsc test.cpp #include template class delegate; template class delegate { public: delegate(T & t, R (T::*fn)(P), P const &原创 2017-08-04 22:03:09 · 213 阅读 · 0 评论 -
c++和c#参数对照,不断完善中
部分参数对照表: C++ I/O C# char path[255] O StringBuilder KCA_DIR I int LPCSTR原创 2017-08-04 22:03:17 · 495 阅读 · 0 评论 -
Howto: Deploy VC2008 apps without installing vcredist_x86.exe
There are several reasons for xcopy deployment of an application (also known as application local). One main reason is that you are independent of what the target computer has installed. Also your ap原创 2017-08-04 22:03:20 · 320 阅读 · 0 评论 -
poco例子及代码阅读笔记
1、uuidgenerator类 UUID uuid; if (arg == "-random") uuid = UUIDGenerator::defaultGenerator().createRandom(); else if (arg.empty()) uuid = UUIDGenerator::defaultGenerator().create(); else原创 2017-08-04 22:03:29 · 1220 阅读 · 0 评论 -
关于does not give a valid preprocessing token
今天碰到gcc的这个编译错误,经实验总结原因如下1、老版本gcc编译器对"."和","作为##符的辅助分隔符没有处理,只有空格可以作为##符的分隔符,例如替换语句中间定义的token采用##token##,例如gcc-3.4.1;2、新版本gcc编译器,"."和",",以及空格都可以辅助##符来拆分token,也就是说token前后只要有这三种符号,其它符号还未测试,都可以省去##符,例如原创 2017-08-04 22:03:49 · 13218 阅读 · 3 评论 -
MPC使用介绍(二)(zt)
下面的内容紧接着MPC使用介绍(一)。3. 编写MPC和MWC文件这节将为大家分别介绍各种输入文件类型和语法的详细信息:3.1 输入文件MPC处理四种不同类型的文件,但是针对大多数的用户,通常情况下只需要关心mpc文件和mwc文件。3.1.1 项目文件(mpc)项目文件(使用mpc后缀),包含了这些信息:包含路径、库目录、源文件以及项目间的依赖关系。一个mpc文件可以有一个或多个的项目,这些项目需原创 2017-08-04 22:05:21 · 5585 阅读 · 0 评论 -
c++ volatile关键字
volatile关键字 volatile是c/c++中一个鲜为人知的关键字,该关键字告诉编译器不要持有变量的临时拷贝,它可以适用于基础类型 如:int,char,long......也适用于C的结构和C++的类。当对结构或者类对象使用volatile修饰的时候,结构或者 类的所有成员都会被视为volatile. 使用volatile并不会否定对CRITICAL_SECTION,Mutex,原创 2017-08-04 22:01:02 · 183 阅读 · 0 评论 -
c++ mutable关键字
mutable关键字 关键字mutable是C++中一个不常用的关键字,他只能用于类的非静态和非常量数据成员 我们知道一个对象的状态由该对象的非静态数据成员决定,所以随着数据成员的改变, 对像的状态也会随之发生变化! 如果一个类的成员函数被声明为const类型,表示该函数不会改变对象的状态,也就是 该函数不会修改类的非静态数据成员.但是有些时候需要在该类函数中对类的数据成员 进行赋值.原创 2017-08-04 22:00:59 · 200 阅读 · 0 评论 -
build ace随时更新
1、编译ace-6.0.2win32在$ace_root$ace下面增加config.h文件,添加内容如下#pragma once//#define ACE_USES_WCHAR //使用unicode字符集#define ACE_HAS_MFC 1 //是否使用mfc#include "ace/config-win32.h"打开对应的项目/工程文件,编译 在default_const原创 2017-08-04 22:00:50 · 270 阅读 · 0 评论 -
转 - sprintf
printf可能是许多程序员在开始学习C语言时接触到的第二个函数(我猜第一个是main),说起来,自然是老朋友了,可是,你对这个老朋友了解多吗?你对它的那个孪生兄弟sprintf了解多吗?在将各种类型的数据构造成字符串时,sprintf的强大功能很少会让你失望。 由于sprintf跟printf在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致s原创 2017-08-04 21:57:41 · 175 阅读 · 0 评论 -
STL overview
The Standard Template Library (STL) provides several containers for storing collections of related objects. The containers are all template classes, allowing you to specify what objects are allowed in原创 2017-08-04 21:58:36 · 134 阅读 · 0 评论 -
C++ 泛型编程系列讲座之实施zt
C++ 泛型编程系列讲座之实施你知道,当一个概念从一个专有名词变成一个普通名词时,说明它真正的深入人心了。比如Kleenex(面巾纸品牌,也指面巾纸),Xerox(施乐,复印机品牌,也指复印机)Q-Tips(化妆品品牌,也指化妆包),对吗?所以说,当我听说你可以在Visual C++.NET中使用“modern C++ design”时非常高兴也就不奇怪了。这里指的是——至少我这样认为——《M原创 2017-08-04 21:59:02 · 387 阅读 · 0 评论 -
c++ lib overview
GUI:WxWindows 、 Qt,xml解析:xerces-c++,网络编程:ACE,数据库编程:OTL其它功能类库:boost Managed C++ wrapper for ZLib:压缩组件Zlib的C++类库CppSQLite - C++ Wrapper for SQLite:SQLite C++封装库CxImage:图像格式转换 C++开源跨平台类库:参考http://blog.原创 2017-08-04 21:59:05 · 409 阅读 · 0 评论 -
C++开源跨平台类库zt
-----------------------------------------------------------------------------------------概要:----------------------------------------------------------------------------------------- 在如下的库支持下,开发的系统可原创 2017-08-04 21:59:08 · 336 阅读 · 0 评论 -
c++语言
C很简洁、很优美,受到很多人的赞赏和喜爱。有一天OO来了。他非要娶C,并许诺给C 许多好处。C起初不同意,但最终未能经得起OO提出的封状、继承、多态的诱惑。 不久后,他们结了婚,并生下一个小孩叫C++。C++长的很象C,并且继承了C的许多优 点,同样他也继承了OO的许多特点,但这些特点继承并不好。因此没能成为一个真正 的OO家族成员。 C++生下来就是一个大原创 2017-08-04 21:59:10 · 235 阅读 · 1 评论 -
C++模板元编程(zt)
C++模板元编程摘要本文简述了模板元编程技术的起源、概念和机制, 并介绍了模板元编程技术在Blitz++和Loki程序库中的应用。 关键字编译期计算 模板元编程 Blitz++ Loki 导言 1994年,C++标准委员会在圣迭哥举行的一次会议期间Erwin Unruh展示了一段可以产生质数的代码。这段代码的特别之处在于质数产生于编译期而非运行期,在编译器产生的原创 2017-08-04 21:59:48 · 307 阅读 · 0 评论 -
loki - Smart ptr(zt)
Boost中提供的5类智能指针。分别是:l scoped_ptr 独占的指针l scoped_array 独占的数组l shared_ptr 引用计数指针l shared_array 引用计数数组l weak_ptr原创 2017-08-04 21:59:51 · 307 阅读 · 0 评论 -
泛型编程与设计新思维zt
泛型编程与设计新思维作者:徐景周 前言 永远记住,编写代码的宗旨在于简单明了,不要使用语言中的冷僻特性,耍小聪明,重要的是编写你理解的代码,理解你编写的代码,这样你可能会做的更好。 --- Herb Sutter 1998年,国际C++标准正式通过,标准化对C++最重要的贡献是:对"强大的抽象概念"给于更有力的支持,以降低软件的复杂度,C++提供了二种功能强大的抽象方法:面向对原创 2017-08-04 22:00:19 · 155 阅读 · 0 评论 -
为什么需要hash_map
0 为什么需要hash_map 用过map吧?map提供一个很常用的功能,那就是提供key-value的存储和查找功能。例如,我要记录一个人名和相应的存储,而且随时增加,要快速查找和修改: 岳不群-华山派掌门人,人称君子剑张三丰-武当掌门人,太极拳创始人东方不败-第一高手,葵花宝典...这些信息如果保存下来并不复杂,但是找起来比较麻烦。例如我要找"张三丰"的信息,最傻的方法就是取得所有的记录,然后原创 2017-08-04 22:00:22 · 399 阅读 · 0 评论 -
关于对齐方式
DEC : #pragma pack(1) SUN : #pragma pack(1) AIX : 编译时 -q align=packed HP-UX : #pragma pack 1 1) 结构内部成员的pack struct foo { char a; int b __attribute__ ((packed)); }; 2) 整个结构的p原创 2017-08-04 22:00:25 · 216 阅读 · 0 评论 -
ace学习之ACE_Message_Block
ace学习之ACE_Message_Block1、copy() 不需要让写指针后移. ACE_Message_Block* mb = new ACE_Message_Block(BUFSIZ); mb->copy(buff); //buff先已经初始化2、初始化mb后需要后移指针的情况 2.1 ACE_Message_Block* mb = new ACE_Message_原创 2017-08-04 22:00:44 · 485 阅读 · 0 评论 -
转,ace与atl与mfc与com
使用ACE也有1年的时间了,从初见ACE时的惊艳,到积极的学习ACE并大胆的将其引入到工程中,再到现在的复杂心情,有些话我真是不吐不快。 我是在windows下做开发的,由于所做的工程涉及到很多界面操作,所以仍然采用了MFC作为开发的基础类库。也许是ACE与MFC天生不合吧,一开始便遇到了问题——内存泄漏!为了这个问题,我在ACE的网站上、yahoo的两个ACE讨论组和当时的小飞驴论原创 2017-08-04 22:06:26 · 274 阅读 · 0 评论