我有一个具有以下结构的课程: -
namespace CL.Forms
{
public partial class A
{
public StringBuilder sb = new StringBuilder();
sb.Append("a");
sb.Append("b");
}
public class B
{
A objA=new A();
string s= objA.sb.ToString();
}
}
我想从类A
访问班级B
中的变量。我尝试了上面的方法。但它不起作用。任何人都知道答案。请帮帮我。
答案 0 :(得分:1)
您需要创建构造函数或方法
namespace CL.Forms
{
public partial class A
{
public StringBuilder sb = new StringBuilder();
//Constructor to set default for string builder
public A()
{
sb.Append("a");
sb.Append("b");
}
}
public class B
{
public B()
{
A objA=new A();
string s= objA.sb.ToString();
}
}
答案 1 :(得分:1)
您需要将代码放在方法中,例如构造函数:
public partial class A
{
public StringBuilder sb = new StringBuilder();
public A()
{
sb.Append("a");
sb.Append("b");
}
}
public class B
{
A objA = new A();
public B()
{
string s = objA.sb.ToString();
}
}
答案 2 :(得分:0)
namespace CL.Forms
{
public partial class A
{
//decalring sb
public StringBuilder sb = new StringBuilder();
//giving sb default values incase you dont change it just call the variable but it has
//but it has to happen in a method
public A()
{
sb.Append("a");
sb.Append("b");
}
// a seperate methode to return sb
public StringBuilder getSb()
{
return sb;
}
}
public static class B
{
//same stuff
A objA = new A();
public void methodNameHere()
{
string s = objA.sb.ToString();
}
}
}
试试这个,你忘了在你的类中实现方法。 这是至关重要的其他它不会工作。但是,如果你只是谷歌一些教程为OOPp>也许更好