资源描述:
《C_语言的复数和常用复函数扩充》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C++语言的复数和常用复函数扩充赖天树倪海鸣中山大学物理学系(广州510275)广州电视台(广州510069)摘要本文利用C++语言的类概念,为C++语言扩充了复数型数据类型和常用复函数。利用C++的运算符重载功能,实现了复数间和复数、实数间的四则运算,增强了C++语言的科学计算能力,使得开发集WINDOWS风格用户界面、含复数的科学计算和图形显示三位一体的应用软件变得非常容易。关键词C++语言复数类运算符重载1引言2C++的复数类声明80年代以来,随着科学计算可视化概念的形成和发根据C
2、++的声明与代码分开的习惯,将C++复数[13]展,要求以图形方式快速、方便地显示大量计算结果,类的声明作为一个独立的头文件,记文件名为COM[5]实现计算与图形显示一体化。此外,随着WINDOWS操作PLEXH,其内容如下:系统的广泛流行和WINDOWS风格的用户界面(菜单、对classCComplex{话框和消息框等)为用户所宠爱和推崇,也要求科学计算应private:doublecx:doublecy;//复数的实部、虚部,私有成员用软件的用户界面WINDOWS风格化。这就要求编程语public:言既具有强
3、的科学计算能力,又具有强大的图形和WINCComplex();CComplex(double,double);//默认和带参数构造函数DOWS风格界面资源开发功能。然而,目前还没有任何一voidInit(double,double);//初值设置函数种编程语言能完全满足这些要求。FORTRAN语言具有强CComplex&operator=(CComplex);//赋值运算符重载大的科学计算能力,在科学计算中一直处于主导地位,但是////复数与复数,复数与实数之间的自加、自减双目运算声明它的图形功能较弱,更不具备
4、WINDOWS风格的用户界面friendCComplex&operator+=(CComplex&,CComplex);//自加运算符重载资源开发功能,因而难以满足WINDOWS风格的可视化科friendCComplex&operator+=(CComplex&,double);//自加运算符重载学计算应用软件的开发,除非用户自己开发一些图形功能friendCComplex&operator-=(CComplex&,CComplex);//自减运算符重载friendCComplex&operator-=(CCompl
5、ex&,double);//自减运算符重载和类似WINDOWS界面的菜单、对话框等功能块。文献////复数与复数,复数与实数之间的四则运算声明[4]中进行了这一尝试。但工作量是巨大的,并且还只是基friendCComplexoperator+(CComplex,CComplex);//加法运算符重载于DOS操作系统。要开发基于WINDOWS操作系统的图friendCComplexoperator+(CComplex,double);//加法运算符重载形功能和界面资源则十分困难,甚至是不可能的,C++语friendCComp
6、lexoperator+(double,CComplex);//加法运算符重载言既具有较强的科学计算能力,又具有强大的图形功能和friendCComplexoperator-(CComplex,CComplex);//减法运算符重载WINDOWS风格界面资源开发功能(如VisualC++,BorfriendCComplexoperator-(CComplex,double);//减法运算符重载landC++),是一种能够较好地满足WINDOWS风格的可friendCComplexoperator-(double,CComp
7、lex);//减法运算符重载视化科学计算应用软件开发的语言。与FORTRAN语言friendCComplexoperator(CComplex,CComplex);//乘法运算符重载friendCComplexoperator(CComplex,double);//乘法运算符重载的计算能力相比,C++语言的计算能力仅弱在不能直接friendCComplexoperator(double,CComplex);//乘法运算符重载计算复数和复函数,而科学计算中复数和复函数又是常见friendCComplexoperator/
8、(CComplex,CComplex);//除法运算符重载的,也许正是这一缺点限制了C和C++语言在科学计算friendCComplexoperator/(CComplex,double);//除法运算符重载领域中的广泛应用。因此,若能扩充C++语言的复数和friendCComplexop