随笔分类 - c/c++
浅谈C++中指针和引用的区别
摘要:指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。 1.指针和引用的定义和性质区别: (1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如
阅读全文
c++ 内联函数 (讲解的TM真好)
摘要:1. 内联函数 在C++中我们通常定义以下函数来求两个整数的最大值: 复制代码 代码如下: int max(int a, int b) { return a > b ? a : b; } 为这么一个小的操作定义一个函数的好处有: ① 阅读和理解函数 max 的调用,要比读一条等价的条件表达式并解释它
阅读全文
Leader/Follower多线程网络模型介绍
摘要:之前分享过《轻量级 web server Tornado代码分析》,介绍了目前我们采用nginx + tornado的方式搭建升级、配管、数据中心等各类服务组建客户端迭代体系。最近注意到,淘宝目前公开了其网络服务器源代码Tengine。根据官方介 绍,Tengine是由淘宝网发起的Web服务器项目。
阅读全文
[亂數] <細說> C/C++ 亂數基本使用與常見問題
摘要:陸陸續續寫了 EA 一、二年,以前亂數引導文回頭看時才發現,怎麼有這麼多細節的錯誤、沒系統。這篇文章主要引導初學者使用亂數,同時附上常被翻出來討論的議題,C/C++適用,唯以 C 語言撰之。也由於是引導初學者,所以在某些用詞上會較不正確,像 compiler、IDE 會故意混為一談。另外亂數原理也全...
阅读全文
C++ 定位构造
摘要:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yiluohuanghun.blog.51cto.com/3407300/1258342看起来不可能的事情在C++中总能找到解决的办法。正如,直接调用构造函数是不可能的,然而可以用p...
阅读全文
C++开源库,欢迎补充。
摘要:C++在"商业应用"方面,曾经是天下第一的开发语言,但这一桂冠已经被java 抢走多年。因为当今商业应用程序类型,已经从桌面应用迅速转移成 Web应 用。当Java横行天下之后,MS又突然发力,搞出C#语言,有大片的曾经的C++程序员,以为C++要就此沉沦,未料,这三年来,C++的生命力突然被 严重...
阅读全文
C++类所占内存大小计算
摘要:C++类所占内存大小计算转载时请注明出处和作者联系方式文章出处:http://blog.csdn.net/chenchong08作者联系方式:vision_chen@yeah.net说明:笔者的操作系统是32位的。class A {}; sizeof( A ) = ?sizeof( A ) = 1明...
阅读全文
C++中的内存对齐
摘要:内存对齐 在我们的程序中,数据结构还有变量等等都需要占有内存,在很多系统中,它都要求内存分配的时候要对齐,这样做的好处就是可以提高访问内存的速度。我们还是先来看一段简单的程序: 程序一#include2usingnamespacestd;34structX15{6inti;//4个字节7charc1...
阅读全文
(I/O完成端口中的)995错误
摘要:在windows下,可能会出现995的错误,msdn对该错误的解释为:The I/O operation has been aborted because of either a thread exit or an application request995这个错误是指由于套接字的关闭,造成一次重...
阅读全文
C++ Socket超时设置
摘要:用winsocket时,send(),recv()过程中有时由于网络状况等原因,收发不能预期进行,可以设置收发时限:int nNetTimeout = 1000; //1秒//发送时限setsockopt( socket, SOL_SOCKET, SO_SNDTIMEO, ( char * )&nN...
阅读全文
在拷贝构造函数中为什么可以访问引用对象的私有变量? [问题点数:0分]
摘要:在拷贝构造函数中为什么可以访问引用对象的私有变量?例如:classPoint{public:Point(intxx=0,intyy=0){X=xx;Y=yy;}Point(Point&p);private:intX,Y;};Point::Point(Point&p){X=p.X;Y=p.Y;} ...
阅读全文
C++中智能指针的设计和使用
摘要:转载请标明出处,原文地址:http://blog.csdn.net/hackbuteer1/article/details/7561235 智能指针(smart pointer)是存储指向动态分配(堆)对象指针的类,用于生存期控制,能够确保自动正确的销毁动态分配的对象,防止内存泄露。它的一种通...
阅读全文
fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h
摘要:错误描述:fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "stdafx.h"”?错误分析:此错误发生的原因是编译器在寻找预编译指示头文件(默认#include"stdafx.h")时,文件未预期结束。没有找到预编译指示信息的头文件"...
阅读全文
CoInitialize浅析一
摘要:大家都知道程序中若要使用COM组件则必须要先调用CoInitialize,该函数主要是用来初始化COM运行环境。但这个函数的作用域是以线程 为单位还是以进程为单位呢?也许大家已经通过测试程序摸索出答案,没错,是以线程为单位。今天我们就稍微再深入一下,通过分析CoInitialize的 具体实现来印证...
阅读全文
C++读取XML,tinyXml的使用
摘要:前言: 最近在开发的过程中,有个需求是对xml进行格式转化,从一种格式转化到另外一种格式.因此,就需要读取xml进行处理.原本打算写成工具在linux下运行,不过后来考虑到和系统结合,最后也就使用了前台js转了.反正都是读取xml,什么技术转不都是一样的么? 不过刚开始还是对要使用的技术做了一定...
阅读全文
TinyXML:一个优秀的C++ XML解析器
摘要:读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好。TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译。这个解析库的模型通过解析XM...
阅读全文
string实现
摘要:#includeusing namespace std;class String{ friend ostream& operator=0&&e<=strlen(m_data)) return m_data[e];}ostream& operator<<(ostream& os,String& str...
阅读全文
htons和htonl函数具体应用
摘要:htons和htonl函数具体应用htons和htonl函数,是用来将主机字节顺序转换为网络字节顺序在进行网络抓包时,抓到的包的数据是网络字节顺序,在进行编程时,要进行主机字节顺序和网络字节顺序间的转换。例如:(对一软件进行抓包时,写的一段小程序)ipp2p: if(get_u16(payload,...
阅读全文
深度解析VC中的消息传递机制
摘要:摘要:Windows编程和Dos编程,一个很大的区别就是,Windows编程是事件驱动,消息传递的。所以,要学好Windows编程,必须对消息机制有一个清楚的认识,本文希望能够对消息的传递做一个全面的分析。一、什么是消息?消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消...
阅读全文
VC OnCtlColor函数来修改控件背景颜色
摘要:CWnd::OnCtlColor afx_msg HBRUSH OnCtlColor( CDC* pDC, CWnd* pWnd, UINT nCtlColor ); 返回值:OnCtlColor必须返回一个刷子句柄,该刷子将被用于画出控件的背景。 参数:pDC 包含了子窗口的显示设备环...
阅读全文