2011-08-17 12 views
4

今日の挨拶!Cでオブジェクトのインスタンスを作成する方法#

私は心に質問があり、いつか答えを探しています。 私の理解が正しければ、インスタンスとオブジェクトの間の差異は次のようになります。 -

インスタンスとは単に参照(コピー)を作成するという意味です。

オブジェクト:メモリ位置は、オブジェクトに関連付けされたときに、今私は、オブジェクトのインスタンスを作成する方法を知りたい新しいオペレータに

を使用して(クラスの実行時のエンティティである)を意味します。 サンプルコードで説明してください

助けていただければ幸いです。 ありがとう

+1

私は何かが見当たりません、確かにvar obj = new Object()を意味しますか? – Lloyd

+0

はいあなたは正しいでしょう –

答えて

5

を、オブジェクトの参照です。クラスのインスタンスはオブジェクトと呼ばれます。あなたの質問は、 "オブジェクトと参照変数の違いは何ですか?"私はいくつかの例でそれを説明しようとします:

Foo f; 

私はちょうど参照変数を宣言しました。これはオブジェクトではなく、オブジェクトを参照する参照のみです。

f = new Foo(); 

は今、私は新しいオブジェクトを作成し、私は Fooオブジェクトを参照 fにそう f参照変数に私が何かをするたびに、それを割り当てられました。私が f.Name = "MyFoo";と呼ぶときのように、私はfooオブジェクトを参照します。

Foo otherFoo; 

ここで別の参照変数を宣言します。私たちが今ここにある何

otherFoo = f; 

は、同じオブジェクトを参照のうえONEメモリ内のオブジェクトが、TWO参照変数を持っています。私たちは同じオブジェクトにtruefotherFoo refferにIsFooプロパティを変更したため

f.IsFoo = true; 
bool isotherFooFoo = otherFoo.IsFoo; 

この最後の行は、trueを返します。

私はあなたにすべてを説明してくれることを願っています。 :)

+1

私はちょうど "素晴らしい"という言葉が1つあります。情報Bosakを共有してくれてありがとう:) –

+0

私はそれをもっと理解し、これについての私のknolageを練習することができるように私にそれを説明して、私にそれを説明してくれてありがとうありがとう:) – Bosak

+0

@Bosak、この写真はどこから来ますか?ここに投稿する権利はありますか?あなたは少なくともソースを言及する必要があります... –

4

"オブジェクトのインスタンス"を作成しないで、クラス(または構造体)のインスタンスを作成します。オブジェクトは、クラスのインスタンスであるです。

そうした場合:

Foo f = new Foo(); 

あなたはFooクラスのインスタンスを作成します。

+0

戻ってきてくれてありがとうthomas.I私は多くの記事や書籍で "オブジェクトはクラスのインスタンスです"と読んでいただきありがとうございます。だから、オブジェクトとインスタンスの間の正確な相違点。私の知る限りでは、リファレンスを作成するだけです。上記のコード行について話しましょう。上記のコードでインスタンスまたはオブジェクトを作成しましたか?私の知識が不足して申し訳ありません: - | –

+0

違いはありません、それは同じことです...それは単なる用語の問題です:通常、特定のクラスのインスタンスを参照するときに "インスタンス"と言います。 「オブジェクト」という言葉はより一般的です。 –

+0

ありがとうございましたbro –

-1

オブジェクトではなくクラスのインスタンスを作成します。

+0

言葉遣いは質問と同じですので、OPは既にこのページを見ていたと思います...とにかく、この説明は間違っています –

0

私たちは、ABC

クラスの
Class ABC 
    { 
     string name=""; 

     public ABC() 
     { 
      this.name = "A1"; 
     } 
     public ABC(name) 
     { 
      this.name = name; 
     } 

    } 

アンインスタンスとして作成することができますクラスがあります。それはインスタンスと呼ばていないあなたの説明では

ABC a1 = new ABC(); 

または

ABC a1 = new ABC("James"); 
0

「オブジェクトはクラスのインスタンスです」という単語では、「インスタンス」という単語は実際には「オブジェクト」という単語とは異なる技術的な意味を持ちません。英語では、 "オブジェクト"という言葉は何を意味しますか? "インスタンス"の意味は、実際には "オブジェクト"の意味と同じ意味になります。

an object is an instance of a class 
an object = instance of a class 
an object = instance 
関連する問題