2010年8月11日

摘要: 下面是一个《Teach Yourself C++ in 21 Days》的流程图,请各位程序员同仁认真领会。如果有必要,你可以查看这个图书以作参照:http://www.china-pub.com/27043看完上面这个图片,我在想,我学习C++有12年了,好像C++也没有学得特别懂,看到STL和泛型,还是很头大。不过,我应该去考虑研究量子物理和生物化学,这样,我才能重返98年杀掉还在大学的我,然... 阅读全文
posted @ 2010-08-11 22:36 Pro.Charm 阅读(2831) 评论(3) 推荐(1) 编辑

2010年8月7日

摘要: 原文出处:Simple File I/O Using C++序论  我曾发表过文件输入输出的文章,现在觉得有必要再写一点。文件 I/O 在C++中比烤蛋糕简单多了。 在这篇文章里,我会详细解释ASCII和二进制文件的输入输出的每个细节,值得注意的是,所有这些都是用C++完成的。一、ASCII 输出  为了使用下面的方法, 你必须包含头文件<fstream.h>(译者注:在标准C++中,... 阅读全文
posted @ 2010-08-07 11:23 Pro.Charm 阅读(2700) 评论(9) 推荐(1) 编辑

2010年8月4日

摘要: 本文涉及 : char跟CString转换、string跟char转换、string 跟CString转换 还有BSTR转换成char*、char*转换成BSTR、CString转换成BSTR、BSTR转换成CString的我们经常写程序比如文件路径需要用到一般都是char*类型的变量作为参数传递,有些函数参数却是string或者CString,造成了经常需要转换,在这里我总结了一下:char跟C... 阅读全文
posted @ 2010-08-04 16:07 Pro.Charm 阅读(1471) 评论(0) 推荐(0) 编辑
摘要: 1.ANSIC与Unicode字符 两者区别就不多少了,一个单字节一个双字节,Unicode可以表示更多的字符,适合诸如汉字的文字系统. 定义使用宽字符:2.声明Unicode字符与及字符串方法: _T()宏需要包含tchar.h[代码]WinNt.h定义了一下宏:[代码]可以利用以上宏来定义:在Visual Studio新建工程,一般都开启了Unicode选项,直接就可以定义宽字符。[代码]3.... 阅读全文
posted @ 2010-08-04 15:58 Pro.Charm 阅读(2075) 评论(7) 推荐(0) 编辑

2010年8月2日

摘要: 1.有些时候我们需要用容器来保存因继承而相关的对象(摘自C++Primer)也就是一个容器里面既有基类对象和派生类对象,但是对象不是多态的,这就出现一些问题:a.比如我们把这个容器设置成派生类类型B,则当我们保存基类对象时候派生类部分的成员是没有初始化的,后果就是当这个对象调用派生类B的某些成员时候不知道会调用了哪些内存数据;b.假如都统一设成基类对象A,则所有的派生类对象都截断了派生部分的数据。... 阅读全文
posted @ 2010-08-02 13:31 Pro.Charm 阅读(1856) 评论(0) 推荐(1) 编辑

2010年8月1日

摘要: 1.复制构造函数和赋值操作符 在编写良好类的习惯文中知道了什么时候需要编写自己的复制构造函数、赋值操作符、析构函数后,当基类中需要这几个的时候,派生类当中就应该显式调用基类的复制构造函数和赋值操作符。如下:值得一提的是 A(v)编译器会进行类类型转换;还有:不能写成这样:这样编译器会提示 形参v重定义了;至于原因我大概测试了一下,应该是在构造B的时候,编译器会调用A的默认构造函数,然后再{}进行A... 阅读全文
posted @ 2010-08-01 01:49 Pro.Charm 阅读(1717) 评论(0) 推荐(0) 编辑

2010年7月30日

摘要: 要触发动态绑定必须满足两个条件:1.只有指定为虚函数的成员函数才能进行动态绑定2.必须通过基类类型的引用或者指针进行函数调用-----摘自《C++ Primer》对于第二点,我开始产生这样的疑问:Q1:为什么只能是引用或指针,直接对象调用不可以吗?Q2:为什么只能通过基类的引用或指针,而不能派生类的指针或引用? A1:通过对象来调用,当赋值时候派生类对象赋值给基类时候,它们发生了类型转换了,当然不... 阅读全文
posted @ 2010-07-30 17:15 Pro.Charm 阅读(1904) 评论(2) 推荐(1) 编辑
摘要: /*转载请注明出自 听风独奏 www.GbcDbj.com */ Windows应用程序分为GUI(Graphical User Interface)和CUI(Console User Interface)程序,很多人却会误认为Windows程序就是GUI程序。 很多初学者使用Microsoft Visual Studio 编写程序时经常会错误地创建程序类型,导致出现”unresolv... 阅读全文
posted @ 2010-07-30 10:09 Pro.Charm 阅读(1967) 评论(0) 推荐(0) 编辑

2010年7月29日

摘要: 1.重载操作符跟重载函数一样的,只不过要区分成员的和非成员的成员的重载操作符,第一个参数默认了是this 指针形参,所以重载操作符作为成员函数,都应该是右操作符比如:上述一个成员,一个非成员重载方式,调用相应如下:s1<<std::cout; // 调用的是作为成员函数的重载操作符std::cout<<s2; //调用的是友原函数2.至于返回值,值得注意的地方是:何时返回类... 阅读全文
posted @ 2010-07-29 23:08 Pro.Charm 阅读(592) 评论(0) 推荐(1) 编辑

2010年7月28日

摘要: 一:C++ 类有一个很重要的处理: 在适当的时候,需要程序员定义复制构造函数、赋值操作符、析构函数。 ----通常,只要这三者其中一个出现需要自定义的,另外两个也需要,三者同时出现的。什么时候需要?------------1.类里面具有指针数据成员------------2.有成员表示在构造函数中分配的其他资源------------3.类在创建对象时候必须做一些特定的工作,比如新建一个唯一标识的... 阅读全文
posted @ 2010-07-28 10:34 Pro.Charm 阅读(231) 评论(0) 推荐(0) 编辑

2010年7月15日

摘要: 如题下载地址:下载 阅读全文
posted @ 2010-07-15 12:44 Pro.Charm 阅读(198) 评论(0) 推荐(1) 编辑

2010年6月15日

摘要: 不要晕,也不要倒,其实我们有很多办法增加自己的经验。围绕磨盘转了一辈子的骡子并不是一头有经验的骡子,将木棍捅到蚁窝中来捕食蚂蚁的熊也没有太多经验,因为它们做那些事情不是出于被指使就是出于一种本能,很少去想是不是可以做得更好,而我们的祖先就做到了,所以今天我们成了世界的主宰。 说到这里,也就说出了我的第一个答案: 技术的深度来自于总结 。不管是学习还是做项目,不管是自己编写的代码还是别人的代码,我们... 阅读全文
posted @ 2010-06-15 17:22 Pro.Charm 阅读(282) 评论(0) 推荐(1) 编辑

导航