パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

GCC開発におけるC++の利用が承認される」記事へのコメント

  • by Anonymous Coward on 2010年06月02日 23時44分 (#1773722)
    何でC++なんか使うのだろう。
    コンパイラとか低レベルなものはCだけの方が、
    サイズが小さい上に保守性も上がっていいと思うんだけど。。。

    それに、最近は例外とエラーを区別できない人がおおくて何でも例外投げるし。。
    多態は関数のポインタで処理を書くようなものだから、いまいちトレースが難しくなるしで
    C++は業務系アプリだからこそメリットのあるものだと思うんだけどな~
    • by Anonymous Coward

      gccは実質、Cで書いたLisp処理系で実装されている風な仕組みだという話らしいので、
      なるほど、ならばいくらでもマクロ的に拡張できるだろう、と
      勝手に妄想合点してたんだけど・・・違うみたいだな。
      LLVMとかに対抗するために、抜本的に書き直すきっかけにしたいのかな。

    • by Anonymous Coward

      え?
      普通エラーが発生したら例外投げるんじゃないの?

    • by Anonymous Coward
      > それに、最近は例外とエラーを区別できない人がおおくて何でも例外投げるし。。

      例外的ではないエラーに関しては、例外を放つなということでしょうか。まぁ、

      私は、エラー処理を書くぐらいなら、例外を使う方がむしろコードはわかりやすくなると思っています。エラー処理のバケツリレーとか、見ていると馬鹿馬鹿しくなるので。
      まぁ、一般ユーザーにNullPointerExceptionとかいう謎のエラーを表示するプログラムが良いとは思いませんが、落としどころは結構難しいのではないですかね。
    • by Anonymous Coward

      >何でC++なんか使うのだろう。
      >コンパイラとか低レベルなものはCだけの方が、
      >サイズが小さい上に保守性も上がっていいと思うんだけど。。。

      保守性はコード品質によります。

      ってのは別にして数年前のGCCSummitで
      「gccコア部分のマクロが複雑怪奇でわかる人なんて数人しかいねーし、
       ここのところは全部C++のtemplateにして可読性あげようぜ」
      と言う提言が出てましたね。

      と、言う訳で可読性の向上のためにC++導入と言う側面もありますよ。

    • by Anonymous Coward
      Cfront でやるそうです
    • by Anonymous Coward
      コンパイラは低レベルじゃないと思いますよ。文字列を変換して、バイナリを吐くだけで、カーネルに近い部分を触っているわけじゃないですよね。

      ただ、C++プログラマにCのコンパイラを書かせるのは、仕様の理解と言う点で、危険な気がする。
    • by Anonymous Coward

      例外禁止のコーディングルールでいいのさ
      スマポだけあればいいってホント

      • by Anonymous Coward
        例外禁止でスマートポインタを使う場合、newは決して失敗しない、という前提条件が必要です。
        つまり決して不足しないメモリ空間などが必要ですよ。
        • by Anonymous Coward

          nothrowでnewしたものをスマートポインタにつっこめば失敗したらスマートポインタにNULLが入るので問題ないでしょう?

          • by Anonymous Coward
            まじ?

            自分では例外をthrowしないのに、律義に例外が来ても大丈夫なように書いてたわ・・・orz
      • by Anonymous Coward
        俺はスマートボインダーとヌルヌル遊びがいい
    • by Anonymous Coward

      コンパイラはオブジェクト指向的に書くと見通しよくなるけどね。

      > 多態は関数のポインタで処理を書くようなものだから、いまいちトレースが難しくなるしで

      コードからアルゴリズムを理解しなければならない時なんかは、たしかにこういう事実はあるのだけども、コンパイラの場合は理論がしっかりしているので宣言的に書かれてもあまり困らないと思う。見通しよく書いてくれればだけど。

      Javaで書かれているCOINSがドキュメントもあるし手ごろです。
      http://www.coins-project.org/ [coins-project.org]

UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている -- あるソフトウェアエンジニア

処理中...