9. 运算符重载运算符只是一种语法上的方便,也就是另外一种函数的调用方式,这种函数调用的参数不在()中,而是在运算符的附近,由编译器决定调用哪个运算符函数。例如使用+做floating-point运算,编译器调用浮点运算的加法运算(一般插入内联代码,或浮点运算处理命令)。如果用+运算整形和浮点型,编译器调用一个特殊函数将int
断断续续的学习C++编程已经有一年多的历史了,在学习了一些基本的语法后,基本可以使用C++语言编程,也拿这个语言参加比赛实现了比较复杂的算法。当时很得意,觉得C++语言也就那么回事,殊不知在大三实习面试的过程中,大部分面试在考察对C++的理解和编程实践方面都会问看了C++方面的哪些书籍,很多都会问有没有看过Thinking in C++,还会考察对STL的理解,如容器,迭代器,算法等。而这些都是我没注意过的,备受打击的我决定要仔细研读Thinking in C++。当我在Internet上搜索Thinking in C++时,我才发现大家这本书的评价非常高,这更坚定了我读这本书的决心。随着对这本书的深入,我才发现作为一个计算机专业的学生,我以前对编程语言的理解是多么的肤浅。这本书让我明白对编程语言的理解最起码要从编译器的角度来思考,只有从编译器的角度来思考自己编写的程序了,自己的编程技艺才算真正的入了门。但是要记住对编程语言的熟练掌握也仅仅是掌握了一种使用工具的技能,而算法才是一切的灵魂。
在某些情况下,需要处理很大的整数,它无法在计算机中精确的表述和处理。若要精确的表示大整数,就必须使用软件的方法来实现大整数的运算。最常用的解决大整数运算的方法是使用一个二重循环,其算法时间复杂度为O(m*n)(其中m,n分别为两个大整数的长度);而选用分治方法则可以将算法时间复杂度降到O(n^(log3))(两个大整数的长度同为n)。但分治方法的算法实现较为复杂,针对这个问题,本文借助标准C++实现了分治方法求解大整数乘法的算法。
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号