Tag: C#的

单例实例声明为GetInstance方法的静态variables

我已经看到实例variables被声明为GetInstance方法中的静态variables的单例模式的实现。 喜欢这个: SomeBaseClass &SomeClass::GetInstance() { static SomeClass instance; return instance; } 我看到以下积极的方面: 代码更简单,因为编译器只有在第一次调用GetInstance时才负责创build这个对象。 代码是更安全的,因为没有其他的方式来获取实例的引用,但与GetInstance方法,没有其他方式来更改实例,但在GetInstance方法。 这种方法的消极方面是什么(除了这不是OOP-ish)? 这是线程安全的吗?

EF 4.1 – Code First – JSON循环引用序列化错误

我得到了一个循环引用序列化错误,虽然,据我所知,我没有任何循环引用。 我从数据库中检索一组订单,并以JSON的forms将它们发送到客户端。 所有的代码如下所示。 这是错误的: 错误 序列化“System.Data.Entity.DynamicProxies.Order_83CECF2AA4DE38232F9077D4B26941AB96BC61230419EA8AC42C9100E6072812”types的对象时检测到循环引用。 说明:执行当前Web请求期间发生未处理的exception。 请查看堆栈跟踪,了解有关错误的更多信息以及源代码的来源。 exception详细信息:System.InvalidOperationException:在序列化“System.Data.Entity.DynamicProxies.Order_83CECF2AA4DE38232F9077D4B26941AB96BC61230419EA8AC42C9100E6072812”types的对象时检测到循环引用。 源错误: 在执行当前Web请求期间生成未处理的exception。 有关exception的来源和位置的信息可以使用下面的exception堆栈跟踪来标识。 我的课程如下: 订购 public class Order { [Key] public int OrderId { get; set; } public int PatientId { get; set; } public virtual Patient Patient { get; set; } public int CertificationPeriodId { get; set; } public virtual CertificationPeriod CertificationPeriod { get; set; […]

vector擦除迭代器

我有这个代码: int main() { vector<int> res; res.push_back(1); vector<int>::iterator it = res.begin(); for( ; it != res.end(); it++) { it = res.erase(it); //if(it == res.end()) // return 0; } } “一个随机访问迭代器指向元素的新位置,后面跟着被函数调用擦除的最后一个元素,如果操作删除了序列中的最后一个元素,则这是向量结尾。 此代码崩溃,但如果我使用if(it == res.end()),然后返回它的作品。 怎么来的? for循环是否获取res.end()以便不等于运算符失败?

如何获得可用内存C ++ / g ++?

我想根据可用的内存分配我的缓冲区。 这样,当我做处理和内存使用量上升,但仍然在可用内存的限制。 有没有办法获得可用的内存(我不知道虚拟或物理内存状态会有什么区别?)。 方法必须是平台无关的,因为它将在Windows,OS X,Linux和AIX上使用。 (如果可能的话,我也想为我的应用程序分配一些可用的内存,在执行期间它不会改变的人)。 编辑:我做了可configuration的内存分配。 我知道这不是一个好主意,因为大多数操作系统都为我们pipe理内存,但是我的应用程序是一个ETL框架(打算在服务器上使用,但也被用在桌面上作为Adobe indesign的插件)。 所以,我遇到了问题,因为不使用交换,Windows将返回错误的分配和其他应用程序开始失败。 正如我被教导要避免碰撞,所以,只是试图优雅地退化。

string和StringBuilder在c#中的区别

我想知道string和StringBuilder之间的区别,也需要一些例子来理解。

将连接string传递给代码优先的DbContext

如何将连接string传递给entity framework的代码优先DbContext? 如果DbContext和web.config中的连接string在同一个项目中并且命名方式相同,则我的数据库生成工作正常。 但现在我需要将DbContext移动到另一个项目,所以我testing传递一个连接string,如下所示: 模型和上下文 public class Dinner { public int DinnerId { get; set; } public string Title { get; set; } } public class NerdDinners : DbContext { public NerdDinners(string connString) : base(connString) { } public DbSet<Dinner> Dinners { get; set; } } 行动 public ActionResult Index() { var db = new NerdDinners(ConfigurationManager.ConnectionStrings["NerdDinnerDb"].ConnectionString); […]

从C#string中删除字符

我怎样才能从string中删除字符? 例如: "My name @is ,Wan.;'; Wan" 我想从string中删除字符'@', ',', '.', ';', '\'' ,使它变成"My name is Wan Wan"

c ++的hex值?

我想要做: int a = 255; cout << a; 并在输出中显示FF,我将如何做到这一点?

stl :: multimap – 我如何获得数据组?

Multimap本质上具有按键sorting的数据组。 我想要一个方法,我可以访问这些个人群体,并获得他们的总值。 例如,在一个std::multimap< string, int >我的商店 {"Group1", 1}, {"Group1", 2}, {"Group1", 3}, {"Group2", 10}, {"Group2", 11}, {"Group2", 12} 已经存储这些值,我应该能够迭代这个多图,并获得每个“组”的聚合值。 问题是在STL中没有定义任何以这种方式访问​​MultiMaps的函数。 我可以使用lower_bound , upper_bound手动迭代multimap和总计组的内容,但我希望能有更好的方法已经在STL中定义? 任何人都可以提出一个解决scheme,我怎样才能得到上面的例子中的一个组的聚合值。

与std ::string一起使用strtok

我有一个string,我想标记。 但是C strtok()函数需要我的string是char* 。 我怎样才能做到这一点? 我试过了: token = strtok(str.c_str(), " "); 失败,因为它把它变成一个const char* ,而不是一个char*