【发布时间】:2014-01-06 06:20:36
【问题描述】:
我们可以使用类对象在函数之间传递数据。就像我有课一样
public class AddsBean
{
public long addId{get;set;}
public int bid { get; set; }
public long pointsAlloted { get; set; }
public string userId { get; set; }
public enum isApproved { YES, NO };
public DateTime approveDate { get; set; }
public string title { get; set; }
public string description { get; set; }
public string Link { get; set; }
public DateTime dateAdded { get; set; }
}
我们可以调用像public List<AddsBean> getAdds(string Id)这样的函数。当您需要类的所有变量时,这种方法很好。 但是如果你只需要 2 或 3 个类变量呢?
传递类的对象是不好的,因为它会浪费内存。另一种可能的解决方案是制作不同类别的较小变量,但这是不切实际的。
我们应该怎么做才能最好地实现动机和最好的性能?
【问题讨论】:
-
你的前提不正确。不使用更多内存。好吧,除了堆栈上的一个额外引用。
-
@AndrewBarber - 堆栈上的一个额外引用,一旦堆栈回滚到其调用者,它将再次被删除.. :)
-
人们经常考虑软件的性能。我不认为这种问题(不是问题)会损害您软件的性能。在这种情况下,它永远不会消耗你的记忆。即使您在课堂上有 100 个字段,也不必担心读取或克隆对象。我们生活在一个内存非常便宜的世界。甚至我的手表也有 128 K 的内存。
-
问题“如何在函数调用之间传递数据”的标题不正确。在 OO 中,您可以改为引用方法。我认为这是一个重要的问题。也许您可以将其命名为“如何从同一类构造不同属性的列表”。我建议您更改名称和标签以引起更多观众的兴趣。
-
@BinsonEldhose 曾经来自微软的非常著名的开发人员说,如果你可以改进它,不要认为任何资源都很便宜,因为即使你的资源花费了额外的毫秒数并被数百万用户使用,你也浪费了几分钟的时间.
标签: c# performance function class