[#36239] ar=[];ar[0]+=2でエラー — Masahiro Sato <msato@...>

142 messages 2002/11/01
[#36240] Re: ar=[];ar+=2でエラー — SAITO Shukaku <shukaku@...> 2002/11/01

At Fri, 1 Nov 2002 17:50:11 +0900,

[#36241] NET:::HTTPで教えてください — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/01

金光です。どもっ。

[#36244] Re: NET/HTTPで教えてください — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/01

金光です。お世話になります。

[#36247] Re: NET/HTTPで教えてください — rubikitch <rubikitch@...> 2002/11/01

From: 金光雅夫 (KANEMITSU Masao) <masao-k@a-net.email.ne.jp>

[#36250] Re: NET/HTTPで教えてください — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/01

金光です。どもっ。

[#36252] Re: NET/HTTPで教えてください — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/01

金光です。困惑

[#36242] Re: ar=[];ar+=2 でエラー — Nakamura Akifumi <BXQ04723@...> 2002/11/01

[#36263] Re: ar=[];ar+=2でエラー — Fujimaru Hiroyasu <f-hiro@...> 2002/11/02

 藤丸です。

[#36278] Re: ar=[];ar+=2でエラー — Kazuhiro NISHIYAMA <zn@...> 2002/11/03

西山和広です。

[#36279] Re: ar=[];ar+=2でエラー — Fujimaru Hiroyasu <f-hiro@...> 2002/11/03

 藤丸です。

[#36281] Re: ar=[];ar+=2でエラー — Kenta MURATA <muraken2@...> 2002/11/03

むらけんです.

[#36282] Re: ar=[];ar+=2でエラー — HIDAKA Takahiro <cv8t-hdk@...> 2002/11/03

 ひだかです。結構現状追認系の意見も多いみたいですが・・

[#36290] Re: ar=[];ar+=2でエラー — MORITA Naoyuki <naohaq@...> 2002/11/03

森田と申します。

[#36304] Re: ar=[];ar+=2でエラー — 堀川 久 <vzw00011@...> 2002/11/03

こんにちは。

[#36310] Re: ar=[];ar+=2でエラー — WATANABE Hirofumi <eban@...> 2002/11/03

わたなべです。

[#36311] Re: ar=[];ar+=2でエラー — 堀川 久 <vzw00011@...> 2002/11/03

こんにちは。

[#36315] Re: ar=[];ar+=2でエラー — matz@... (Yukihiro Matsumoto) 2002/11/03

まつもと ゆきひろです

[#36316] Re: ar=[];ar+=2でエラー — Tanaka Akira <akr@...17n.org> 2002/11/03

In article <1036352263.849985.17004.nullmailer@picachu.netlab.jp>,

[#36317] Flyaway — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/04

金光といいます。質問させてください。

[#36318] Re: Flyaway — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/04

添付ファイルが落ちてましたすみません。

[#36319] Re: Flyaway — Masatoshi SEKI <m_seki@...> 2002/11/04

[#36320] Re: Flyaway — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/04

金光です。咳さん、どもっ。

[#36321] Re: Flyaway — Masatoshi SEKI <m_seki@...> 2002/11/04

咳といいます。

[#36322] Re: Flyaway — 金光雅夫 (KANEMITSU Masao) <masao-k@...> 2002/11/04

金光です。どもっ。あとすこし

[#36344] Re: ar=[];ar+=2でエラー — WATANABE Hirofumi <eban@...> 2002/11/04

わたなべです。

[#36347] Re: ar=[];ar+=2でエラー — Tanaka Akira <akr@...17n.org> 2002/11/04

In article <20021104160723.757540.eban@os.rim.or.jp>,

[#36367] Re: ar=[];ar+=2でエラー — matz@... (Yukihiro Matsumoto) 2002/11/05

まつもと ゆきひろです

[#36383] Re: ar=[];ar+=2でエラー — Tanaka Akira <akr@...17n.org> 2002/11/07

In article <1036531761.901892.25889.nullmailer@picachu.netlab.jp>,

[#36386] Re: ar=[];ar+=2でエラー — matz@... (Yukihiro Matsumoto) 2002/11/07

まつもと ゆきひろです

[#36394] Re: ar=[];ar+=2でエラー — Tanaka Akira <akr@...17n.org> 2002/11/07

In article <1036640262.362098.10433.nullmailer@picachu.netlab.jp>,

[#36371] クラス変数をクラスメソッドから参照する — Takashi Kanai <kanai@...4u.or.jp>

こんにちは、金井です。

14 messages 2002/11/06

[#36532] Linux Magazine Ruby初等講座 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

19 messages 2002/11/19

[#36563] [ANN] Ruby/Cache 0.2 — "Yoshinori K. Okuji" <okuji@...>

Ruby/Cache 0.2をリリースしました。Ruby/Cacheは、LRUアルゴリズムに基い

20 messages 2002/11/22

[#36612] 全角文字に挟まれた半角スペースを削除するには? — Take_tk <ggb03124@...>

16 messages 2002/11/28
[#36614] Re: 全角文字に挟まれた半角スペースを削除するには? — WATANABE Tetsuya <tetsu@...> 2002/11/28

渡辺哲也です。

[#36617] Re: 全角文字に挟まれた半角スペースを削除するには? — Take_tk <ggb03124@...> 2002/11/28

たけ(tk)です

[ruby-list:36578] Re: インスタンス変数が nil になってしまう

From: "みかみまさと" <kofu@...>
Date: 2002-11-24 08:12:31 UTC
List: ruby-list #36578
こんにちは。みかみにございます。


 るびきちさん、ご教示ありがとうございます。

| > TMail::Mail クラスにインスタンス変数を一つ追加したい
| > のですが、値を代入しても nil になってしまいます。
| こういう場合、TMail::Mailクラスをインスタンスに持つクラスを
| つくってみるのはどうでしょうか?

 難しくて、理解できていないかもしれませんが、これは、

class A
  def initialize(int)
    @num = int
    ...
  end
  def num
    @num
  end
end

a = A.new(1)
p a.type #=> TMail::Mail
p a.num  #=> 1

 というクラス A を作るということでしょうか?
そうだとしても、その方法が分かりません。お手数をお掛けして
済みませんが、重ねてご教示のほどお願い致します。


| > class Hoge
| >
| >   class Fuga < TMail::Mail
| >
| >     def self.load(str, int)
| >       @num = int
| >       super(str)
| >     end
| これではクラスHoge::Fugaのインスタンス変数@numが設定されます。
| Hoge::Fugaのインスタンスではありません。
| なぜならHoge::Fugaの特異メソッド(クラスメソッド)なので。

 これも難しいのですが、

 インスタンス変数: 所属 = オブジェクト, スコープ = メソッド
      (『Ruby プログラミング入門』 p.172)

 で、上記の @num は、
    所属 =     Hoge::Fuga クラス (クラスもオブジェクトだから)
    スコープ = self.load  メソッド

 なのだという理解であっていますでしょうか?
こちらは、あまりきれいなソースではありませんが、
下記のようにとりあえず望み通りの結果が得られました。

 ありがとうございます。


(ソース)
#!/usr/bin/ruby

require 'tmail'

class Hoge

  class Fuga < TMail::Mail

    def self.load(str, int)
      new(TMail::FilePort.new(str), TMail::DEFAULT_CONFIG, int)
    end

    def initialize(port = nil, conf = TMail::DEFAULT_CONFIG, int = nil)
      @num = int
      super(port, conf)
    end

    def num
      @num
    end
  end

  def initialize(str, int)
    @mail = Fuga.load(str, int)
    p @mail.num
    p @mail.from.join(', ')
  end
end

int = 130
Hoge.new("#{ENV['HOME']}/Mail/inbox/#{int.to_s}", int)

(実行結果)
% ./test.rb
130
"kofu@nmn.jp"

    ______________________________________________________
   /                                               ______/
  /  みかみ まさと - 英語表記も姓名順です        _____/
 /   Mikami Masato - ↓最終更新日  11/11       ____/
/       興  風  館 - http://kofukan.nmn.jp/  ___/

In This Thread