C++&C
文章平均质量分 64
sunny3106
这个作者很懒,什么都没留下…
展开
-
word出问题,找不到sku011.cab
今天一大早打开电脑,准备继续写毕业论文,惊奇地发现word文.开不了了,一双击就弹出安装进度条,然后报错:找不到sku011.cab。真郁闷,昨晚上还用的好好的,不知道怎么回事。最近系统老是有点不稳定,唉。既然有了问题就找方法来解决吧。从同学那里拷来office的安装文件包,本来打算修复一下,大不了就重新装一遍office,哪知道还是报找不到***.cab。我从安装包里找了一下,这些.cab文原创 2007-05-25 10:10:00 · 5660 阅读 · 11 评论 -
VC应用 —— 个性化你的工具栏
VC应用 —— 个性化你的工具栏图标这几天在BBS上看到一篇文章,讲利用VC设计真彩的工具栏。其实,如果大家常用VC的话,肯定会觉得VC的工具栏的图标很丑陋,那么下面介绍的方法就可以让你给你的工具栏大变脸~~因为那是很久以前的文章,有些东西已经不太好用了,我测试了一下,改进了一些地方,下面把主要的步骤和关键内容贴出来,和大家共享了一下。^_^原创 2007-08-19 17:44:00 · 4117 阅读 · 3 评论 -
利用SkinMagic美化VC程序详解
利用SkinMagic美化VC程序详解 这两天在网上看到给VC程序换肤的文章,自己也试了一下,因为版本的问题,忙了整整一天,才算搞出点头绪。废话不说了,下面我们一步步地来实现这个功能!(1)下载SkinMagic的开发包,我用的开发包需要下面几样东西:SkinMagicLib.lib,DETOURS.lib两个库文件;.smf文件(皮肤文件);还有个SKinMagicL原创 2007-08-21 16:42:00 · 2048 阅读 · 26 评论 -
C语言经典面试试题
C语言经典面试试题 1、局部变量能否和全局变量重名? 答:能,局部会屏蔽全局。要用全局变量,需要使用"::" 局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。转载 2007-09-22 16:13:00 · 1796 阅读 · 0 评论 -
C++中的placement new
在写服务器程序的时候,经常会用到内存池,很多是在堆(heap)上预分配一大块内存,用空闲链表的方式来实现内存的分配与回收。在业务应用的时候,如果想用这预分配的内存来创建对象,就不能用通常的new了,而需要用到placement new构造,它可以构造对象到给出的内存上。placement new的原型如下:void *operator new( size_t, void *p原创 2012-03-24 22:15:14 · 341 阅读 · 0 评论 -
linux使用msgpack及测试
在网络程序的开发中,免不了会涉及到服务器与客户端之间的协议交互,由于客户端与服务器端的平台的差异性(有可能是windows,android,linux等等),以及网络字节序等问题,通信包一般会做序列化与反序列化的处理,也就是通常说的打包解包工作。google的protobuf是一个很棒的东西,它不仅提供了多平台的支持,而且直接支持从配置文件生成代码。但是这么强大的功能,意味着它的代码量以及编译生成原创 2012-03-20 22:59:09 · 6153 阅读 · 1 评论 -
linux下的字节序问题总结
1. 字节顺序概念字节顺序是指占内存多于一个字节类型的数据在内存中的存放顺序,通常有小端、大端两种字节顺序。大端对齐:内存的低地址位存放着高位数据;小端对齐:内存的低地址位存放着低位数据;举个例子,内存中两个连续字节中的数据为0x12 0x34,表示一个short,如果是大端对齐,这个数为0x1234;如果是小端对齐,则这个数为0x3412。2. 测试在我的开发原创 2012-04-09 11:05:28 · 3815 阅读 · 0 评论 -
特化模板函数的编译错误
这两天写代码,用到了特化模板函数,假设叫template.h,将这个template.h文件包含在了工程中的fwd预设头文件(类似visual studio自动生成的stdafx.h),编译的时候报出一堆multiple definition的错误。 解决方法有三个:1. 在定义特化模板函数的时候,定义为extern函数,然后在template.cpp中实现。2. 定义为一个in原创 2012-04-21 20:28:50 · 457 阅读 · 0 评论 -
使用Windows Sockets 1.1编程
使用Windows Sockets 1.1编程 一 Windows Sockets协议栈安装检查 任何一个与Windows Sockets Import Library联接的应用程序只需简单地调用WSAStartup()函数便可检测系统中有没有一个或多个Windows Sockets实现。而对于一个稍微聪明一些的应用程序来说,它会检查PATH转载 2007-05-19 09:37:00 · 519 阅读 · 0 评论 -
[转]高质量C++/C编程指南 -- 内存管理之一
内存管理欢迎进入内存这片雷区。伟大的Bill Gates 曾经失言: 640K ought to be enough for everybody转载 2007-08-07 21:26:00 · 422 阅读 · 0 评论 -
[转]高质量C++/C编程指南 -- 内存管理之二
内存管理7.5 free和delete把指针怎么啦? [此处原文缺]7.7 杜绝“野指针”“野指针”不是NULL指针,是指向“垃圾”内存的指针。人们一般不会错用NULL指针,因为用if语句很容易判断。但是“野指针”是很危险的,if语句对它不起作用。 “野指针”的成因主要有转载 2007-08-08 10:18:00 · 374 阅读 · 0 评论 -
[转]高质量C++/C编程指南 -- 其它编程经验
其它编程经验11.1 使用const提高函数的健壮性看到const关键字,C++程序员首先想到的可能是const常量。这可不是良好的条件反射。如果只知道用const定义常量,那么相当于把火药仅用于制作鞭炮。const更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体。 const是constant的缩写,“恒定不变”的意思。转载 2007-08-09 15:04:00 · 450 阅读 · 0 评论 -
[转]高质量C++/C编程指南 -- C++函数的高级特性
C++函数的高级特性对比于C语言的函数,C++增加了重载(overloaded)、内联(inline)、const和virtual四种新机制。其中重载和内联机制既可用于全局函数也可用于类的成员函数,const与virtual机制仅用于类的成员函数。 重载和内联肯定有其好处才会被C++语言采纳,但是不可以当成免费的午餐而滥用。本章将探究重载和内联转载 2007-08-08 14:53:00 · 395 阅读 · 0 评论 -
[转]C++指针详细解析——史上最精彩指针文章
一 指针的概念 指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int *ptr; (2)char *ptr; (3)int **ptr; (4)int (*转载 2007-08-10 10:26:00 · 1810 阅读 · 1 评论 -
[转]高质量C++/C编程指南 -- 类的构造函数、析构函数与赋值函数
类的构造函数、析构函数与赋值函数构造函数、析构函数与赋值函数是每个类最基本的函数。它们太普通以致让人容易麻痹大意,其实这些貌似简单的函数就象没有顶盖的下水道那样危险。 每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)。对于任意一个类A,如果不想编写上述函数,C++编译器将自动为A产生四个缺省的函数,如A(voi转载 2007-08-09 13:54:00 · 480 阅读 · 0 评论 -
restrict关键字的使用
定义 restrict关键字是在C99标准中添加的,用于限定和约束指针。规则 它告诉编译器,所有修改该指针所指向内存中内容的操作,全都必须基于该指针;不存在其它进行修改操作的途径(通过其它变量或指针)。优点 能帮助编译器进行更好的优化代码,生成更有效率的汇编代码。测试int test_restrict(int* x转载 2012-04-21 19:18:28 · 505 阅读 · 0 评论