摘要: C++代码//Config.h#pragmaonce#include#include#include#include#include/**\briefGenericconfigurationClass**/classConfig{//Dataprotected:std::stringm_Delimi... 阅读全文
posted @ 2014-11-03 11:39 guang_blog 阅读(1127) 评论(0) 推荐(0) 编辑
摘要: 应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的。它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序。配置文件的根节点是configuration。我们经常访问的是appSettings,它是由.Net预定义配置节。我们经常使用的配置文件的架构是象... 阅读全文
posted @ 2014-11-03 11:29 guang_blog 阅读(4124) 评论(0) 推荐(1) 编辑
摘要: 三维空间的右手笛卡尔坐标如图1所示。图1在航空中,pitch, yaw, roll如图2所示。pitch是围绕X轴旋转,也叫做俯仰角,如图3所示。yaw是围绕Y轴旋转,也叫偏航角,如图4所示。roll是围绕Z轴旋转,也叫翻滚角,如图5所示。图2图3图4 阅读全文
posted @ 2014-07-31 14:51 guang_blog 阅读(307) 评论(0) 推荐(1) 编辑
摘要: 一、非MFC程序可以用以下方法检测内存泄露:1. 程序开始包含如下定义:#ifdef _DEBUG#define DEBUG_CLIENTBLOCK new( _CLIENT_BLOCK, __FILE__, __LINE__)#else#define DEBUG_CLIENTBLOCK#endif... 阅读全文
posted @ 2014-07-16 11:46 guang_blog 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 1. 位字段(bit field)是一个signed int或unsigned int中一组相邻的位(C99还允许_Bool类型位字段)。C使用unsigned int作为给位字段结构分配内存空间的基本单位。位字段由一个结构声明建立,该结构声明为每个字段提供标签,并决定字段的宽度。例如,以下声明建立... 阅读全文
posted @ 2014-07-16 10:10 guang_blog 阅读(838) 评论(0) 推荐(0) 编辑
摘要: 让编译器进行隐式类型转换所造成的弊端要大于它所带来的好处,所以除非你确实需要,不要定义类型转换函数。隐式类型转换的缺点:它们的存在将导致错误的发生。例如:class Rational {public: ... operator double() const; // 转换Rational类成doubl... 阅读全文
posted @ 2014-06-30 11:58 guang_blog 阅读(3034) 评论(0) 推荐(2) 编辑
摘要: C++类中,有时候使用到传值调用(对象实体做参数),遇到这种情况,可要小心了!特别是当你所传值的对象生命周期较长,而非临时对象(生命周期段)的时候。来看看下面的情况:#include using namespace std;class Text{private:char* str;public:Te... 阅读全文
posted @ 2014-06-28 13:57 guang_blog 阅读(954) 评论(0) 推荐(1) 编辑
摘要: 1、new 是c++中的操作符,malloc是c 中的一个函数2、new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构函数,而malloc则只分配内存,不会进行初始化类成员的工作,同样free也不会调用析构函数3、内存泄漏对于malloc或者new都可以检查出来的,区别在于... 阅读全文
posted @ 2014-06-23 14:32 guang_blog 阅读(987) 评论(2) 推荐(1) 编辑
摘要: 总的来说C++09跟C++98相比的变化是极其重大的。这个变化体现在三个方面,一个是形式上的变化,即在编码形式层面的支持,也就是对应我们所谓的编程范式(paradigm)。C++09不会引入新的编程范式,但在对泛型编程(GP)这个范式的支持上会得到质的提高:concepts、variadic-tem... 阅读全文
posted @ 2014-05-29 17:51 guang_blog 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 1、右值引用引入的背景临时对象的产生和拷贝所带来的效率折损,一直是C++所为人诟病的问题。但是C++标准允许编译器对于临时对象的产生具有完全的自由度,从而发展出了Copy Elision、RVO(包括NRVO)等编译器优化技术,它们可以防止某些情况下临时对象产生和拷贝。下面简单地介绍一下Copy E... 阅读全文
posted @ 2014-05-29 17:48 guang_blog 阅读(2003) 评论(0) 推荐(0) 编辑