基本的に:
クラス aはユーザー アカウント オブジェクトを構築します
クラス bはアカウント オブジェクトをインスタンス化し、それを保持します
クラス cは、クラス d で参照されるメソッドを保持します。
クラス dは、クラス c のメソッドに対してクラス b のユーザー アカウントを参照したいと考えています。
//constructs object
public class A
{
public string firstname;
public string lastname;
public A(string givenname, string surname)
{
firstname = givenname;
lastname = surname;
}
}
//instantiates object from class A
public static class B
{
public static void Accounts()
{
A PBeenis = new A("Paul", "Beenis");
}
}
//holds a method that displays info about object
public static class C
{
public static void Get_UserInfo(ref A name)
{
Console.WriteLine("Name: {0} {1}", name.firstname, name.lastname);
}
}
//calls a method in class C and references object from class B
public static class D
{
static void Main(string[] args)
{
C.Get_UserInfo(ref PBeenis);
}
}
クラス D のクラス C のメソッドを使用して、クラス B のオブジェクト PBeenis をどのように参照しますか?
C.Get_UserInfo(ref PBeenis);
CS0103 'Pbeenis' という名前は現在のコンテキストに存在しません
何を達成しようとしているのかよくわかりませんが、メソッドの外部でインスタンス化を作成してみませんか? また、ref キーワードを使用する必要はありません。
public static class B
{
public static A PBeenis = new A("Paul", "Beenis");
}
//calls a method in class C and references object from class B
public static class D
{
static void Main(string[] args)
{
C.Get_UserInfo(B.PBeenis);
}
}
他のオプションは、メソッドでオブジェクトを返すことです
//instantiates object from class A
public static class B
{
public static A Accounts()
{
return new A("Paul", "Beenis");
}
}
//calls a method in class C and references object from class B
public static class D
{
static void Main(string[] args)
{
C.Get_UserInfo(B.Accounts());
}
}
はじめまして。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加