都是C++的类惹得祸!
author: hjjdebug
time: 2009-4-13
从c 到c++, 最主要是引入了类,并由此引入了其它许多概念。
函数的默认参数,类的构造和析构函数
公有,私有成员变量,成员函数,友员函数
运算符重载。
模板类,模板类套模板类。 等等。
这些概念纠缠在一起常使人头晕脑涨, c++的类怎么了,到底是什么东西?它想干什么?
我们怎么理解?
下面给出一个简单例子,程序本身什么也没干,但包含了所有上面的感念。
慢慢的调试它,理解它。还有许多概念没有包括,以后再说吧。
菜鸟文章,高手飘过,新手帮顶。欢迎拍砖!
; ---------------------------------------------------------------------------
#include <iostream>
using namespace std;
template <class T> class T1Class
{
public:
T1Class(){};
T1Class(T a1):_a1(a1+0x20){};
T1Class(T& a1){
_a1=a1._a1;
};
~T1Class(){};
friend ostream& operator<<(ostream &os,T1Class& a1)
{
os<<a1._a1<<endl;
return os;
};
private:
T _a1;
};
template <class TA, class TB=T1Class <TA> > class T2Class
{
public:
TA _aa;
TB _ab;
T2Class(){};
T2Class(TA a1, T1Class<char>& a2=T1Class<char>('Z')){
_aa=a1;
_ab=a2;
};
~T2Class(){};
};
int main(int argc, char *argv[])
{
// string str("hello");
//cout<<str;
T2Class<char> aObj('a');
cout<<aObj._aa<<ends<<aObj._ab<<endl;
system("pause");
return 0;
}
; ---------------------------------------------------------------------------