Tag: c ++

C ++与C#中的静态变量有什么区别?

静态变量在C#中具有与在C ++中相同或相似的function吗? 编辑: 使用C ++,您可以在许多不同的上下文中使用静态变量 – 例如:1)全局变量,2)本地函数变量,3)类成员 – C#中的类似用法是否与C ++类似?

DataGridView – AllowUserToAddRows做了什么?

我期望这个设置会影响控件本身,但我似乎无法通过将AllowUserToAddRows设置为true的DataGridView添加新行。 我只是垃圾使用我的鼠标和键盘,还是我完全误解了这个属性? 我怀疑它是后者,虽然我在文档的方式上找不到太多指向正确的方向。 编辑:顺便说一句,这不是我的垃圾,它似乎与使用List作为DataGridView的DataSource有关; 如果我绑定到List,那么小’*’就不会出现。

如何使DataReader从一开始就重新开始读取?

如何制作dr.Read(); 如果条件满足,从头开始再读? 就像是: sqlDataReader dr = command.ExecuteReader(); for(int i=0; dr.Read() ; i++){ if(condition ){ //let dr.Read() start reading from the beginning } }

DatagridView:删除未使用的空间?

我想知道是否可以在C#中删除DataGridView控件的未使用空间(灰色空间)。 我必须使DataGridView只显示白表。 alt text http://sofzh.miximages.com/c%23/datagridview-to-excel-1.gif 有什么建议 ?

具有可选参数的entity framework?

使用Entity Framework 5是否可以使用带有可选参数的存储过程,这样您就不必为每个未使用的参数添加空值? 我必须使用的存储过程有87个参数,其中只有2个是必需的。 我真的很讨厌在每个调用中放入85个空值的想法。

为什么函数需要在定义或使用之前声明?

在C中它是可选的。 在C ++中,一个“MUST”在使用/定义之前声明一个函数。 为什么会这样? 需要什么? 我们不会在C#或Java中这样做。 有趣的是,我们正在定义一个function。 即使在那时,定义本身也有一个声明,我们需要声明。 天知道为什么?

C#Registry SetValue抛出UnauthorizedAccessException

在您尝试使用“快速Google搜索”进行回答之前。 我想指出我已经。 这是情况,我有以下方法尝试修改注册表项值。 我得到的问题是,当执行时,它会抛出一个UnauthorizedAccessException, 即使我已经将密钥打开为可写 。 我以管理员身份运行Visual Studio,甚至尝试使用清单文件制作一个小的.exe,强制它以管理员身份运行,执行代码时没有运气。 密钥已经存在,它不会尝试进入CreateKey方法。 这是代码块。 Path = “S-1-5-21-1644491937-1078145449-682003330-5490\Software\Microsoft\Windows\CurrentVersion\Policies\System” Key = “DisableTaskMgr” NewValue = 1 public OperationResult ModifyKey() { OperationResult result = new OperationResult(); if (!Path.IsNullOrEmptyTrim()) { if (!Key.IsNullOrEmptyTrim()) { try { var key = Microsoft.Win32.Registry.Users.OpenSubKey(Path, true); if (key != null) { key.SetValue(Key, NewValue); key.Close(); } else { result = CreateKey(); […]

错误:“DataGridViewComboBoxCell值无效。”DataSource是基本类型的列表

我无法找到与我的问题完全匹配的问题。 与此问题和此问题类似,我将DataGridViewComboBoxColumn上的DataSource设置为一系列事物。 在我的情况下,事情是简单的类型,如双打和整数,所以谈论ValueMembers和DisplayMembers的答案并没有给我带来很多好处。 当用户选择一个值时,我得到了可怕的“DataGridViewComboBoxCell值无效”错误。 我可以用一个空的dataGridView_DataError处理程序来吞下错误,但这显然是一个糟糕的方法。

什么时候应该封装generics类型?

我见过很多人建议你应该用类更接近你的域封装generics类型,例如Steve和Nat在增长面向对象软件中的建议,在测试的指导下 : 我们的经验法则是我们试图用generics来限制传递类型[…]。 特别是当应用于集合时,我们将其视为一种复制forms。 这是一个暗示,应该将一个域概念提取到一个类型中。 一般来说,什么时候做这样的事情是个好主意.. class PersonList : List ..而不是直接使用List ?

为什么Java,C#和C ++没有范围?

Ada , Pascal和许多其他语言支持范围,一种子类型整数的方法。 范围是有符号整数值,其范围从值(第一个)到另一个(最后一个)。 在OOP中实现相同的类很容易,但我认为本机支持该function可以让编译器进行额外的静态检查。 我知道静态validation一个范围内定义的变量不会“溢出”运行时,即由于输入错误,我无法进行validation,但我认为可以做一些事情。 我想到了契约式设计方法(Eiffel)和Spec#( C#契约 ),它们提供了更为通用的解决方案。 是否有一个更简单的解决方案,至少在C ++,C#和Java的编译时检查静态的越界分配? 某种静态断言 ? 编辑 :我知道“范围”可以用于不同的目的: 迭代器 统计员 整数子类型 我会专注于后者,因为前者很容易在C *语言上映射。 我想到一组封闭的值,比如音乐音量,即从1到100的范围。我想用一个值递增或递减它。 我希望在静态溢出的情况下出现编译错误,例如: volume=rangeInt(0,100); volume=101; // compile error! volume=getIntFromInput(); // possible runtime exception 谢谢。