ベターC?オブジェクト指向

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
mi_l

ベターC?オブジェクト指向

#1

投稿記事 by mi_l » 10年前

以前(結構前)にも似たようなトピックを投稿しましたが、少しだけ話が変わります。

単刀直入に質問しますと、
公開されている竜神録の館のコードはベターCなのですか?(質問1)

下の方にC++版とあったのでC++ではないように思えるのですが・・・

そこでC++で肝になるのがオブジェクト指向で「オブジェクト指向な実装」とでもいいますか、この「オブジェクト指向な実装」がとても難しく経験を要する事は現在勉強中なので実感しています。


そこで、私が仮に、竜神録の館とまったく同じソースを第三者(皆さんのようなプログラムに長けている人(または皆さん))に見せた場合、その人は「ベターCで書いてるんだ」と思われるのでしょうか?(質問2)

別にベターCだから嫌だというわけではありません!
ただ、訊いてみたかっただけです。

そして、もし竜神録の館のコードが「ベターC」ではないということでしたら、どの辺が、というのを教えてください。

まだ、ベターCについてはモヤモヤしているので・・

C言語 = ベターCではないですよね?


※私の調べたページによると
ベターC = 「C++からオブジェクト指向プログラミングやジェネリックプログラミングを除外したスタイル」とありましたので、C言語 = ベターCではないとおもってはいるのですが・・・

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: ベターC?オブジェクト指向

#2

投稿記事 by softya(ソフト屋) » 10年前

> C言語 = ベターCではないですよね?

ないです。ちなみに竜神録龍神録です。名前の間違いは失礼なので出来るだけしないほうが良いと思います。

>公開されている竜神録の館のコードはベターCなのですか?(質問1)

どこをみてベターCだと思われましたか? 明確にC++の機能を使っていますでしょうか? C言語を逸脱している思い当たる場所を教えて下さい。

>そこで、私が仮に、竜神録の館とまったく同じソースを第三者(皆さんのようなプログラムに長けている人(または皆さん))に見せた場合、その人は「ベターCで書いてるんだ」と思われるのでしょうか?(質問2)

基本的にはクラスもどきやら、STLの部分使用をしない限りはベターCだと思わないでしょう。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

mi_l

Re: ベターC?オブジェクト指向

#3

投稿記事 by mi_l » 10年前

softya(ソフト屋) さんが書きました:基本的にはクラスもどきやら、STLの部分使用をしない限りはベターCだと思わないでしょう。
この、クラスもどきや、STL自体がどのようなものかわかりません・・・

使用されてるサンプルプログラムなどあるサイトってありますか?

アバター
usao
記事: 1887
登録日時: 11年前

Re: ベターC?オブジェクト指向

#4

投稿記事 by usao » 10年前

何を知りたいのか?というか何を気にかけていらっしゃるのかがいまいちわかりかねます.
(何を持って ベターC と呼ぶのかという明確な定義があるわけではない気がしますが
 仮に,
   ベターC ←→ C++
 という区分が(誰かの主観的定義の上で?)あったとして,左側に分類されたとして,だから何?っていうか…)

検索してみたら例として「Cで書いてるつもりだけどDXライブラリを使っている」状態を挙げている(?)人もいるみたいです.
(多分,あなたが「調べたページ」と同一かな?)
私はDXライブラリの実態は知りませんけど,もしあなたが名前を挙げているソフトでそのようなライブラリが使われているとすれば
その人の定義では ベターC と呼ぶのだと思います.


コードを見せられたら云々の話については
私は「CコンパイラではなくC++コンパイラじゃないと通らないコードな時点でC++だね」としか思いませんね…
主観的なコードの良し悪しとか書き方の好き嫌いとかはあるでしょうけど.
そもそも「ベターC」とかいう単語自体が私の利用可能な語彙の範疇に無い,とでもいうか??

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: ベターC?オブジェクト指向

#5

投稿記事 by softya(ソフト屋) » 10年前

usaoさんの言うとおり明確な線引はありません。
その人がそう思えば、それはベターCなのでしょう。
「1. そもそもベターCとは何か? | 株式会社きじねこ」
http://www.kijineko.co.jp/tech/betterc/1
ただ、よくベターCって呼ばれる場合は上の3に該当していた時が多いように思います。
なので、私はそういう想定で答えを書きました。

DXライブラリを使っているだけでベターCと呼ぶのなら、その人の基準は上記の1なのでしょう。

「クラスもどき」も正確な定義が有るわけでない自己流の定義ですが、ただ関数を意味もなくクラスにまとめただけとか、OOP(オブジェクト指向)ではない物を指しています。
なので正確には「OOP以前」という方が良いかもしれません。
●参考
「(OOP == C++) ではない」
http://www.curiocube.com/mikata/oop/p3_ch08_oopcpp.php

STLに関しては検索すればすぐ見つかるので自分で探してみてください。
何でもここで聞いてしまうのが、あまり好ましい状況とも思えませんので自分で出来るだけ調べてみてください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

“C言語何でも質問掲示板” へ戻る