2013-04-12 22:45
⁄ 工业·编程
⁄ 共 1168字
在一些大的工程中,可能会包含几十个基础类,免不了之间会互相引用 ( 不满足继承关系,而是组合关系 ) 。也就是需要互相声明。好了,这时候会带来一些混乱。如果处理得不好,会搞得一团糟,根据我的经验,简单谈谈自已的处理办法:
编码时,我们一般会尽量避免 include 头文件,而是采用声明 class XXX 。 但有时候还是必须用 Include 头文件,那么,两者的划分在于什么呢?
应该是很明确的,但书上好像都少有提及。
首先: ...
c++阅读全文
2013-04-06 22:36
⁄ 工业·编程
⁄ 共 208字
刚才写程序,偷了个懒,使用了lstrcpyn来进行unicode的字符拷贝,结果发现少拷贝了一个字符,看了下MSDN:
TCHAR chBuffer[512];
lstrcpyn(chBuffer, "abcdefghijklmnop", 4);
chBuffer的结果为abc, 也就是指定了长度4,拷贝3个字符,同时加一个'/0'字符。
而strncpy(unicode版本为_tcsncpy)则中规中矩的拷贝参数指定的字符数。
c++阅读全文
2012-12-26 15:00
⁄ 工业·编程
⁄ 共 2570字
SQLite,是一款轻型的数据库,是遵守ACID的关联式关系数据库,目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同样的代码可以实现跨平台编译,这个数据库和微软的Access很象,都是小型的数据库管理系统,最大的差别为sqlite不需要office的支持,可以完全开源,是真正意义上的跨平台的数据库。
...
c++, 数据库阅读全文
2012-12-25 14:38
⁄ 工业·编程
⁄ 共 1398字
对于某些对象来说,不用外部数据进行完全初始化是不合理的。如一个没有输入姓名的地址簿对象。
无缺省构造函数的三个问题:
1. 建立数组
例:
classEquipmentPiece {
public:
EquipmentPiece(int IDNumber);
...
};
EquipmentPiecebestPieces[10]; // 错误!没有正确调用EquipmentPiece 构造函数
EquipmentPiece*bestPieces = new EquipmentPiece[10]; // 错误!
解决办法:
① 数组定义时提供必要参数。这种方法不能用在堆数组...
c++, 构造函数阅读全文
2012-12-22 23:43
⁄ 工业·编程
⁄ 共 827字
math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有: 1 三角函数 double sin (double); double cos (double); double tan (double); 2 反三角函数 double asin (double); 结果介于[-PI/2, PI/2] double acos (double); 结果介于[0, PI] double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2] double atan2 (double, double); 反正切(整圆值), 结果介于[-PI/2, PI/2] 3 ...
c++阅读全文
2012-12-20 21:18
⁄ 工业·编程
⁄ 共 1275字
1、命名空间std C++标准中引入命名空间的概念,是为了解决不同模块或者函数库中相同标识符冲突的问题。有了命名空间的概念,标识符就被限制在特定的范围呢,不会引起命名冲突。最典型的例子就是std命名控件,C++标准库中所有标识符都包含在该命名空间中。 如果确信在程序中引用某个或者某些程序库不会引起命名冲突,那么可以通过using操作符来简化对程序库中标识符(通常时函数)的使用,例如: using namespace std; ...
c++, stl阅读全文
2012-12-07 12:20
⁄ 工业·编程
⁄ 共 3341字
本人不是卖书的,我也不会给出任何购书链接,只是给C语言学习者推荐一条学习的方向。如果你喜欢看电子书网上很多,如果你喜欢纸质那么就买吧,经典的书值得收藏,是对版权的尊重!
》》》Linux网络编程必看书籍推荐
基础篇
1.《写给大家看的C语言书(第2版)》
原书名: Absolute Beginner's Guide to C (2nd Edition) 原出版社: Sams 作者: (美)Greg Perry [作译者介绍] ...
c++, 书籍推荐阅读全文
2012-12-04 23:20
⁄ 工业·编程
⁄ 共 4391字
一. 虚基类的声明:
1. 虚继承:
在以下类的定义层次中,Derived1与Derived2的对象将各自拥有一个基类子对象Base,类A作为Derived1与Derived2的派生类,将拥有2个基类子对象Base,一个存储在基类子对象Derived1中,另一个存储在基类子对象Derived2中,如果类A想使用两个基类子对象Base,这没问题,但是如果想共享同一个Base子对象,比如使用Base记录同一个状态,而不需要记录多个状态,上述常规继承就不能满...
c++阅读全文
2012-12-04 23:17
⁄ 工业·编程
⁄ 共 3501字
上一篇 using声明、using指示及其作用域详解 说的是函数内部或者全局作用域中使用using声明和using指示的情况,这里说的是在嵌套命名空间中使用using声明与using指示的情况。
//named_namespace.h 命名空间成员声明与定义头文件
[html] view plaincopyprint?
1. #ifndef NAME_17_2_3
2. #define NAME_17_2_3
3. namespace name_17_2_3
4. {
5....
c++阅读全文
2012-12-04 23:16
⁄ 工业·编程
⁄ 共 3122字
1. using 声明:一个using声明一次只能引入一个命名空间成员,从using声明点开始,直到包含该using声明的作用域结尾,声明的名字仅仅在该作用域是可见的,外部作用域中相同的名字被屏蔽,它可以出现在全局作用域,局部作用域或者命名空间作用域中,类中的using声明局限于使用其基类中定义的名字;
using声明将名字直接放入出现using声明的作用域,好像using声明是命名空间成员的局部别名一样,这种声明是局部化的,名字仅仅在us...
c++阅读全文