【发布时间】:2011-11-14 04:01:44
【问题描述】:
我正在制作一个包含三个类的程序:
- 输出类从其他两个类接收数据,写入两个新字符串,结合特殊格式到另一个字符串并输出
- AidaF 类有一个方法可以每秒返回一个值(一个字符串)
- GmailF 类有一个方法可以每分钟左右返回一个值(一个字符串)
所以我厌倦了使用return string; 将第 2 类和第 3 类的数据返回到第一个类,但这只是将值返回到当前类,而不是第一个类。
这是我正在处理的代码,不过已经精简了很多。但基本都在那里。
namespace Final
{
public class Output
{
public static void Main()
{
Console.WriteLine(gml + aida);
}
}
public class AidaF
{
private static System.Timers.Timer aTimer;
public static void AMain()
{
aTimer = new System.Timers.Timer(1000);
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
aTimer.Interval = 1000;
aTimer.Enabled = true;
}
private static void OnTimedEvent(object source, ElapsedEventArgs e)
{
...
reader.ReadToFollowing("value");
aida.Append(reader.ReadElementContentAsString()).Append(",");
return aida;
...
}
}
public class GmaillF
{
private static System.Timers.Timer gTimer;
public static void GMain()
{
gTimer = new System.Timers.Timer(200000);
gTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent1);
gTimer.Interval = 200000;
gTimer.Enabled = true;
}
private static void OnTimedEvent1(object source, ElapsedEventArgs e)
{
CheckMail();
}
public static string CheckMail()
{
...
gml.Append(reader.ReadElementContentAsString()).Append(",");
return gml;
...
}
}
}
【问题讨论】:
-
我不太明白你在问什么,但你似乎想将类视为过程/函数......实际上或语义上它们确实不是。 :-P
-
我想从第 2 类和第 3 类返回值,以便第 1 类可以使用它们。
-
您是否正在尝试重新发明“可观察集合”模式?也就是说,集合通常被认为是您一次“提取”一件事的信息,例如客户列表。一个可观察的集合推送信息给对它感兴趣的消费者。
-
类不是“返回”值的东西;类代表事物的种类。 “报纸”类代表所有报纸对象的类。 方法返回值。
-
这是我被告知的地方:stackoverflow.com/questions/7314638/…