回 帖 发 新 帖 刷新版面

主题:能不能给一个简单的例子证明在某些问题上c++显著优于fortran?

周围有专门搞计算的老师用c++
 
传说是,c++面对对象的能力使它具有取代fortran的潜力
 
能不能给个具体生动的例子?
 
我用fortran的一个体会是,在稀疏矩阵的存储上,fortran比较笨拙
 
假设用(行号,列号,值)三元素记录矩阵的非零元素
 
每次,都得用两个array来记录一个矩阵
 
一个array记录行号和列号,一个array记录值
 
一个是整型,一个是浮点型
 
也许用c++的结构体型变量,只需要一个结构体array,就可以记录一个稀疏矩阵了

回复列表 (共6个回复)

沙发

在数值计算上,没有太大的区别,你用fortran也可以。

C++等面向对象语言主要能力是抽象,你不理解也没关系,不用就是了,对学术研究没有影响。

板凳

數值計算F還是好用過C/C++的。而非數值方面,C/C++遠比F好用。
它們暫時還無法互相替代。

3 楼

cgl_lgs大哥最近喜欢了繁体了呵!!!

4 楼

[quote]cgl_lgs大哥最近喜欢了繁体了呵!!![/quote]
呵呵,在家里的輸入法改成繁體后就改不回去了~~~
因輸入法與WIN7兼容性有點點問題:)但這輸入法確實好用:)
打個廣告:這個是海峰五筆:)

5 楼

另,針對樓主的例子來說吧:
用C++的那套辦法也可以套到FORTRAN當中,不信可以問asymtotic兄:)但既然對效率沒有幫助,那我們就不用。要知道,數值計算更注重的是效率、精度等等。在fortran中,你可以用real*16來表示一個高精度的浮點,而c++可以么?至少現在我看到的long double還是8字節的。

我既用c++也用fortran,個人感覺是該用什么語言時就用什么語言。要是有人說讓我用fortran開發一個GUI程序,我會斷然回絕——有病啊,用fortran開發的又難維護,周期又長~~~~~

6 楼

短时间内来看谁都取代不了谁。在高性能计算上Fortran有优势,在系统及应用及界面上C++有优势。

我来回复

您尚未登录,请登录后再回复。点此登录或注册