« おえかきむずかしい。 | Main | ただいま格闘中。 »

2010.10.11

つまらないことが気にかかる。

今日はお絵かきはおやすみして久しぶりのプログラミング。C++をいじるが、色々と忘れている。関数プロトタイプ宣言とか、完全に忘れていたな。

…ってか、なんで関数プロトタイプ宣言って必要だったんだっけ?

コンパイラを上手く作れば、関数プロトタイプ宣言なしのC++言語という実装も可能だと思うんだけど。
関数の仕様を変えるときに2箇所書き換えなきゃいけないから、不便なんだよなあ。
…ということで関数プロトタイプが言語仕様に取り入れられている理由というのを検索しはじめたら仕事時間が終わる、という今日一日。

…まあ、祝日だからいいか。

|

« おえかきむずかしい。 | Main | ただいま格闘中。 »

Comments

ずばり,その理由は,publicとprivateを指定したいからですか?

Posted by: | 2010.10.12 06:25 AM

うーん、プロトタイプ宣言はCのころからあったから、publicとprivateは関係ない気がするんですが。
…あれ、Cってpublicとか無いよね?最近C++しか使ってないから憶えていないけど。

Posted by: いちのみや | 2010.10.12 07:45 PM

C/C++は各ソースファイルを独立にコンパイルしてるので、関数引数の仕様が分からないと変数をきちんと渡せない、とかの話では、、。

FortranもFortran90以降(つまりポインタやら何やらCっぽい機能が導入された後)、explicit interfaceがないとまずいことが起こるようになったので、そんな気がします。

最近の言語はシンボルテーブルとか言うのを吐いて、それを参照してコンパイルするので、プロトタイプは要らない、みたいなのをどこかで読んだ気も。

C++のもっと新しいバージョンで、プロトタイプも
変数宣言も(ほとんど)要らないものが出てほしいです。(最新のだと、auto ? とかで多少要らなくなった、とか読みました。)

Posted by: 化学教室の人 | 2010.10.12 10:24 PM

>化学教室の人さま

うーむ、シンボルテープルを持っていないからプロトタイプが要るということですか。
プロトタイプ/変数宣言なしのC++は欲しいけど、Cと互換性を保っている以上、難しいかなあ。

Posted by: いちのみや | 2010.10.13 07:15 PM

これを機に Java に乗り換えてみる…って Java にマトモな数値計算関係のライブラリあったかな?最低でも LAPACK と fftw は欲しいですね。

Posted by: そりとん | 2010.10.17 12:47 PM

>そりとんさま
うーん、Javaですかー。昔勉強したけどすっかり忘れているなあ…。

Posted by: いちのみや | 2010.10.17 09:08 PM

The comments to this entry are closed.

TrackBack


Listed below are links to weblogs that reference つまらないことが気にかかる。:

« おえかきむずかしい。 | Main | ただいま格闘中。 »