On Feb 19, 12:50 am, Steve <[email protected]> wrote:
> So what is the distinction between a class instance variable and a
> class variable (ie @@name="Steve")?
>
mostly the odd scoping stuff which means that @@foo in an instance
method  and @@foo in a class context refer to the same object.

Fred

> On Feb 18, 1:56 pm, Frederick Cheung <[email protected]>
> wrote:
>
> > On 18 Feb 2009, at 18:42, Steve wrote:
>
> > > Learning about instance variables and don't understand why the
> > > instance variable "name" in the code example below is not visible
> > > where as "title" is. Could someone explain this to me and why I hadto
> > > use the "self.get_name()" method (which I don't understand since I
> > > pulled it off the net) to get the value out of name?
>
> > Classes are objects in ruby and can have instance variables, so when  
> > you set @name = "Steve" where you have put it you're create an  
> > instance variable on the class rather than an instance variable on a  
> > particular instance of the class.
>
> > Fred
>
> > > Thanks
> > > -------------------------------
> > > class InstanceVariables
> > > �...@name = "Steve"
>
> > >  def initialize()
> > >   �...@title = "Software Eng"
> > >  end
>
> > >  def self.get_name
> > >   �...@name
> > >  end
>
> > >  def get_name
> > >    self.class.get_name    # Why can't I just return @name?
> > >  end
>
> > >  def get_title
> > >   �...@title
> > >  end
>
> > >  def show_vars
> > >    puts "name: #...@name, title: #...@title"  # name is not set, at least
> > > that I can tell.
> > >  end
> > > end
> > > ------------------------
> > > obj1 = InstanceVariables.new
> > > puts obj1.get_name()
> > > puts obj1.get_title()
> > > obj1.show_vars()
> > > ------------------------
> > > Steve
> > > Software Eng
> > > name: , title: Software Eng
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to