相关疑难解决方法(0)

什么时候应该在C++中使用类vs结构?

在什么情况下在C++中使用structvs a 更好class

c++ oop struct ooad class

895
推荐指数
15
解决办法
38万
查看次数

我什么时候应该使用结构而不是类?

MSDN说你应该在需要轻量级对象时使用结构.当结构比类更可取时,还有其他任何情况吗?

有些人可能忘记了:

  1. 结构可以有方法.
  2. 结构不能被继承.

我理解结构和类之间的技术差异,我只是对使用结构没有很好的感觉.

.net oop

295
推荐指数
9
解决办法
7万
查看次数

C++中的结构与类

什么时候应该有人在C++中使用结构而不是类,反之亦然?当一个完整的类管理一些信息似乎有点过分,但我想发现自己使用结构,但是想表明所包含的信息都是相关的.我想知道什么是一个好的指导方针,能够分辨哪一个比另一个更合适?

编辑:在阅读材料时发现这些链接在提交问题后,指示的Stack Overflow是相关的:

什么时候应该在C++中使用类vs结构?
C++中struct和class之间有什么区别?

c++ class

22
推荐指数
2
解决办法
4536
查看次数

我应该为我的Linq2Sql数据使用Struct而不是轻量级数据类吗?

我经常使用linq2sql生成的类,并创建一个简单的仅数据类

public class myentity
{
     public Guid id { get; set; }
     public string name { get; set; }
     // etc
}
Run Code Online (Sandbox Code Playgroud)

我没有把方法放在这些类中,我主要使用它们作为帮助类,所以我可以很容易地序列化到/从json和其他类似的操作.

我的问题是,我应该在这种情况下使用结构而不是类吗?

将它作为一个结构或多或少的结构定义似乎是有意义的,但我不知道这里的性能是否理想,因为我经常将类从方法传递给方法而我不想要一个大量的副本,因为结构是价值类型.

我经常做的另一件事是使用Linq2Sql的延迟执行来返回我自己的Linq2Sql类的轻量级版本,而不是它们生成的那个.我不完全确定使用结构而不是类会在这里产生一些不利的性能影响.

我如何使用延迟执行的一个例子是这样的

public IEnumerable<myentity> getEntities()
{
     return from me in MyEntity return new myentity() { id = me.id, name = me.name };
}

public IEnumerable<myentity> getEntitiesThatStartWith(string s)
{
     return from me in getEntities() where me.name.StartsWith(s);
}
Run Code Online (Sandbox Code Playgroud)

.net c# struct linq-to-sql

2
推荐指数
2
解决办法
368
查看次数

何时在 C++ 中使用结构而不是类

可能的重复:
什么时候应该在 C++ 中使用类和结构?

在使用 C++ 编写程序时,何时应该使用 STRUCT 声明而不是 CLASS 声明?

  1. 绝不 !!?
  2. 任何事情......让你感觉更好的那个?

c++ oop struct class

1
推荐指数
2
解决办法
2470
查看次数

标签 统计

c++ ×3

class ×3

oop ×3

struct ×3

.net ×2

c# ×1

linq-to-sql ×1

ooad ×1