1、new 和delete:
Type *p = new Type[num];delete[] p;
2、三目运算:
max=(a>b)?a:b;
等效于
if(a>b)
{
max=a;
}
else比gt没{
max=b;
if(a>b)
{
max=a;
}
else比gt没{
max=b;
}
3、friend
友元不是类的一部分,在类中声明类外定义,定义不需friend或类的关键字
注:
(1) 友元关系不能被继承。
(2) 友元关系是单向的,不具有交换性。若类B是类A的友元,类A不一定是类B的友元,要看在类中是否有相应的声明。
(3) 友元关系不具有传递性。若类B是类A的友元,类C是B的友元,类C不一定是类A的友元,同样要看类中是否有相应的申明
(4) 友元函数并不是类的成员函数,因此在类外定义的时候不能加上class::function name
4、运算符重载(本质:函数重载)
http://blog.csdn.net/zgl_dm/article/details/1767201
5、构造函数
template <class Type> class DblNode {
friend class DblList<Type>;
private:
Type data; //数据
DblNode<Type> *lLink, *rLink; //指针
DblNode ( Type value, DblNode<Type> *left, DblNode<Type> *right ) :
data (value), lLink (left), rLink (right) { } //用value,left,right分别给data,lLink,rLink赋初值。
};
friend class DblList<Type>;
private:
Type data; //数据
DblNode<Type> *lLink, *rLink; //指针
DblNode ( Type value, DblNode<Type> *left, DblNode<Type> *right ) :
data (value), lLink (left), rLink (right) { } //用value,left,right分别给data,lLink,rLink赋初值。
};