1 / 5 指针1.使用方法定义、赋值;释放,置零。Int* pInt = new int(3); delete pInt; pInt = 0; 2.迷途指针,空指针:迷途指针就是其所指向的内存被释放,空指针则指指针的值为0。3.转换运算符没有指定返回值,尽管返回一个转换后的值。4.例如:将、 class Counter 的一个对象转换为unsigned short 的值,Class Counter { Private: Int value; Public: Operator unsigned int();// } Counter::operator unsigned int() { Return (int)value; } Main() { Counter ctr; Int intValue = ctr; } 5.派生类隐藏基类中方法:覆盖基类的某个方法后,就不能通过派生类对象使用任何同名的基类方法,即派生类若要覆盖某个方法就要覆盖所有的同名方法。类似的情况是提供了任何构造函数,编译器将不会提供默认构造函数。Const 方法,派生类中忘记方法中的 const 关键字,则原基类方法不是被覆盖而是被隐藏了。6.派生类对象调用被覆盖的基类方法subObject.BaseClassName.method(); 7.切除 slicing :仅当通过指针和引用进行调用时,才能发挥虚方法的魔力;按值传递对象时将不能发挥虚方法的魔力。Class Mammal {virtual void speak(){}} ;class Dog{void speak(){}}; class Cat{void speak(){}}; Void PtrFunction(Mammal*); void ValueFunction(Mammal); void RefFunction(Mammal&); Void ptrFunction(Mammal * pMammal) {pMammal->speak();} Void valueFunction(Mammal vMammal) {vMammal.speak()}//不能调用虚函数,还是基类函数Void refFunction(Mammal & rMammmal){rMammal.speak();} 8.虚复制构造函数:基类Clone()虚函数,派生类中重载该函数,实现拷贝基类: Virtual Mammal* Clone () {return new Mammal (*this );} 派生类: virtual Mammal * Clone (){return new Dog (*this );} 9.任何一个方法为虚方法时,应将析构 函数声明为虚函数。10. 使用 new 创建对象时, delete 删除所占用的内存;new [size] 创建数组时, delete[]删除数组内存空间,若遗漏了方括号,将只删除数组中的第一个对象,产生内存泄露。11. cin.get();//get 接收三个参数:待填充的缓冲区;要读取的最大字符数;终止输入的限定符,默认限定符为换行符。12. char *strcpy(char *dest, const char *src) 将整个字符串...