c++
爱吃芋头
没有
展开
-
enum枚举类型作为成员变量
<br />Enum是枚举类型。<br />定义形式一:<br />Enum 枚举类型名<br />{枚举常量1(=0),<br />枚举常量2(=0),<br />……<br />}枚举变量1(,枚举变量2,……);<br />如<br />Enum weekday<br />{ Monday=0,Tuesday,Wednesday,Thursday,Friday=9,Saturday,Sunday<br />}today;<br />Weekday 为枚举类型名,today为枚举变量,大括号里面原创 2010-12-16 10:16:00 · 9231 阅读 · 1 评论 -
C++中头文件相互包含的几点问题
<br />一、类嵌套的疑问<br />C++头文件重复包含实在是一个令人头痛的问题,前一段时间在做一个简单的数据结构演示程序的时候,不只一次的遇到这种问题。假设我们有两个类A和B,分别定义在各自的有文件A.h和B.h中,但是在A中要用到B,B中也要用到A,但是这样的写法当然是错误的:<br />class B;<br />class A<br />{<br />public:<br />B b;<br />};<br />class B<br />{<br />public:<br />A a;<br /原创 2010-12-22 13:34:00 · 492 阅读 · 0 评论 -
关于默认构造函数的几个错误认识
<br />假期间闲来无事,就下载了某大师的VC++视频资料。在讲到C++时,说是如果程序员没有自己定义默认构造函数,那么编译器会自动为我们产生一个默认的构造函数。 本来这个错误的认识很多程序员都有,不足为奇。但有这么多年编程经验的高手也有这样的错误认识就不禁让我哑然了。<br /> 其实编程语言和我们所用的任何软件没有区别,例如Photoshop、AutoCAD之类。其唯一不同的是我们用的编程语言是基于编译器的,而应用软件是基于我们的编程语言的。<br /> 既然我们所用的软件原创 2010-12-27 11:29:00 · 644 阅读 · 0 评论 -
C++多线程调试和测试的注意事项
<br />在上次的帖子聊了C++多线程的跨平台问题,后来感觉意犹未尽。今天顺便说一下开发C++多线程应用程序时,有关调试和测试的一些注意事项。下面这些注意事项主要是针对C++,不过有些对于其它的语言也适用。<br /> <br /> ★关于设置断点和单步执行<br /> 很多同学非常依赖于调试器的断点功能和单步功能。这在单线程情况下倒还好(不过有些单线程但涉及GUI的程序,也会有点麻烦)。至于多线程程序的调试,这两种手段简直就是噩梦的开始。多线程造成的主要问题大都和竞态条件(Race Conditio转载 2010-12-27 11:41:00 · 923 阅读 · 0 评论 -
友元函数、友元类、访问私有数据成员、友元关系
<br />友元函数(friend function)<br />1. 什么是友元函数?<br /> 一个类的私有数据成员通常只能由类的函数成员来访问,而友元函数可以访问类的私有数据成员,也能访问其保护成员<br />2. 友元函数的用处体现在哪里?<br /> 2.1 使用友元函数可提高性能,如:用友元函数重载操作符和生成迭代器类<br /> 2.2 用友元函数可以访问两个或多个类的私有数据,较其它方法使人们更容易理解程序的逻辑关系<br />3. 使用友元函数前应注意:<br />原创 2010-11-18 14:56:00 · 11537 阅读 · 0 评论 -
VC/GCC 宏一览
<br />C/C++宏大全<br />一、标准预定义宏<br />The standard predefined macros are specified by the relevant language standards, so they are available with all compilers that implement those standards. Older compilers may not provide all of them. Their names all start w转载 2011-01-20 17:18:00 · 877 阅读 · 0 评论 -
C++的重写,重载,重定义
1. 重写 (override): 父类与子类之间的多态性。子类重新定义父类中有相同名称和参数的虚函数。1) 被重写的函数不能是 static 的。必须是 virtual 的,或者是 override 的 ( 即函数在最原始的基类中被声明为 virtual , c++ 中没有 override) 。2) 重写函数必须有相同的类型,名称和参数列表 (即相同的函数原型)3) 重写函数的访问修饰符可以不同。尽管 virtual 是 private 的,派生类中重写改写为 public,protected原创 2011-03-04 14:13:00 · 1717 阅读 · 1 评论