>で、私の考えるオブジェクト指向とは、
>
>「クラス(部品)を作り、組み合わせてアプリケーションを作る」
これだけだと、「ライブラリ」あるいは「モジュール」と、「クラス」との
区別が曖昧になってしまうのではないでしょうか。
Nさんが、
http://kmaebashi.com/programmer/object/othello.html
こちらのページにある、static指定でカプセル化を図ったC版board.cを
オブジェクト指向とみなすのであれば別ですが、
静的にひとつしかないboard.cモジュールは非OOで、
create_board()関数により複数のBoardを作ることができる版はOO的である、
ということに同意されるのであれば、マルチプルインスタンスが(すくなくとも
クラスベースのOOにとって)必要条件であるということにも同意されるはずだと
思うのですが。
というわけで、
>なので「マルチプルインスタンス=オブジェクト指向」
>という説にはあえて反対しておきたいと思います。
>そんな大げさなもんではないと私は考えています。
こちらもよくわかりません。しかも、上記のご意見は、その前段に
>関数ポインタ(複数)とそれを操作するデータ(構造体)
>をパッケージングすることで実現するというのは、
>C++への移行期であった当時は「なるほど」と思った
>ものです。
とあります。私の認識では、これは立派なマルチプルインスタンスです。
http://kmaebashi.com/programmer/object/intro.html
ここで、C++ FAQから引用し、
| もしCでマルチプルインスタンスが必要なら、プログラマは構造体を使いますが、
| こっちはカプセル化をサポートしません。
と書いているように。