[#1219] ruby animal — OZAWA Sakuro <crouton@...>

小澤さく@塩尻Internetです.

18 messages 1996/12/09

[#1256] ruby 0.99.4-961212 available — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです.

21 messages 1996/12/12
[#1257] Re: ruby 0.99.4-961212 available — Yasuo OHBA <jammy@...> 1996/12/12

大庭@SHLJapanです.

[#1258] Re: ruby 0.99.4-961212 available — matz@... (Yukihiro Matsumoto) 1996/12/12

まつもと ゆきひろです.

[#1259] Re: ruby 0.99.4-961212 available — WATANABE Hirofumi <watanabe@...> 1996/12/12

わたなべです.

[#1261] Re: ruby 0.99.4-961212 available — matz@... (Yukihiro Matsumoto) 1996/12/12

まつもと ゆきひろです.

[#1290] ruby 0.99.4-961217 will be available — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです.

32 messages 1996/12/17
[#1300] Re: ruby 0.99.4-961217 will be available — sinara@... 1996/12/17

原です。

[#1305] Re: ruby 0.99.4-961217 will be available — matz@... (Yukihiro Matsumoto) 1996/12/17

まつもと ゆきひろです.

[#1308] Re: ruby 0.99.4-961217 will be available — gougi@... (Shigeru Gougi) 1996/12/17

ごうぎ@TCIです。

[#1341] Re: ruby 0.99.4-961217 will be available — matz@... (Yukihiro Matsumoto) 1996/12/18

まつもと ゆきひろです.

[#1342] Re: ruby 0.99.4-961217 will be available — sinara@... 1996/12/18

原です。

[#1345] [BUG?] access string out of range — sinara@... 1996/12/18

原です。

[#1330] Re: Rational and Complex — Shin-ichiro Hara <sinara@...>

原です。

30 messages 1996/12/17
[#1335] Re: Rational and Complex — sinara@... 1996/12/18

原です。

[#1359] Re: Rational and Complex 1996/12/18

けいじゅ@SHLジャパンです.

[#1423] 配列への grep — (Dezawa Shin-ichiro) <dezawa@...>

出沢です

14 messages 1996/12/23

[#1469] wish ... — Noritugu Nakamura <nnakamur@...>

25 messages 1996/12/24
[#1470] Re: wish ... — matz@... (Yukihiro Matsumoto) 1996/12/24

まつもと ゆきひろです.

[ruby-list:1551] Re: C++ ユーザ のための手引 (Ver. 0.1.1)

From: Sinichiro Dezawa <dezawa@...>
Date: 1996-12-27 10:17:29 UTC
List: ruby-list #1551
> |この言葉は全く正しいのですが(作者の言葉なんだから当たり前
> |だ^^;)、ちょっと読むと、前半で「値渡ししかなく」と言いなが
> |ら後半「参照が渡る」と反対の事を言っている様にみえて、かな
> |り難しいですね。
> 
> あー,そうかぁ.私自身はC++を使っていてもスタック上にオブジェ
> クトを置くことは全くないので,違和感を感じませんでした.C++
> 通の人はこういうのをどういうのですか?

C の人なら、 構造体を値渡しする。 かな

C++ では 構造体 == クラスだから  オブジェクト を値渡し で良いんでしょうが、
はまるのは C++ と ruby での違いで
   C++ ではプロパティはポインタでなく値だから、値渡しされた後
   そのプロパティ の値を触っても参照元には影響が無い。
   ruby ではプロパティは値でなく値が入ってる場所へのポインタだから
   プロパティの値を変えると参照元に影響が出る。

でもね、C++ でも プロパティとして ポインタを持つ事はあるわけで、
その場合参照渡しされてもポイントされた場所までコピーされるわけ
ではないから、この場合は ruby と同じ現象が出る。
で、多分これは判り難い BUG となるのだろうな。

その点、ruby は全部が必ずそうだからすっきりしてて良いかもしれない。
# 全部でもないか。

> 変数の値とオブジェクトの状態を区別して頂くしかないでしょうね.
> 特に配列や連想配列のようなコンテナ系のオブジェクトは誤解を生
> みやすいのでしょうか.

ここをどう判り易く伝えるかがポイントだと思います。
配列や連想配列以外にString も同様ですね。

> |「破壊的な操作」の定義も難しいですよね。私も最初は何が破壊
> |的で何が破壊的でないのか区別がつきにくかった。

参照した方で行った操作が、参照もとからみたオブジェクトの状態
を変えたら破壊的ですよね。
だから
> 
> オブジェクトの状態(コンテナの内容も含めて)を変更するものはみ
> な破壊的です.ですから,
同じ意見

> そんなに難しいですか? うーん,この辺が私の説明がわかりにく
> いといわれる原因かなあ.

値渡しで参照渡しだってのが判れば簡単。
そこまでが大変。

In This Thread