Tag: C#的

我如何在C#中构建XML?

我怎样才能在C#中生成有效的XML?

C ++ 11 rvalues和移动语义混淆(return语句)

我想了解右值引用并移动C ++ 11的语义。 这些例子之间有什么区别,哪些不做矢量拷贝? 第一个例子 std::vector<int> return_vector(void) { std::vector<int> tmp {1,2,3,4,5}; return tmp; } std::vector<int> &&rval_ref = return_vector(); 第二个例子 std::vector<int>&& return_vector(void) { std::vector<int> tmp {1,2,3,4,5}; return std::move(tmp); } std::vector<int> &&rval_ref = return_vector(); 第三个例子 std::vector<int> return_vector(void) { std::vector<int> tmp {1,2,3,4,5}; return std::move(tmp); } std::vector<int> &&rval_ref = return_vector();

malloc和calloc之间的区别?

做什么有什么区别: ptr = (char **) malloc (MAXELEMS * sizeof(char *)); 要么: ptr = (char **) calloc (MAXELEMS, sizeof(char*)); 什么时候使用calloc over malloc是一个好主意,反之亦然?

一个或多个实体的验证失败。 有关更多详细信息,请参阅“EntityValidationErrors”属性

使用代码优先的方法播种我的数据库时出现此错误。 一个或多个实体的验证失败。 有关更多详细信息,请参阅“EntityValidationErrors”属性。 说实话我不知道如何检查验证错误的内容,Visual Studio向我展示了它有8个对象的数组。 所以8验证错误。 这是与我以前的模型,但我做了一些改变,我下面解释: 我有一个名为Status的枚举,我将其更改为一个名为Status的类 我将类ApplicantsPositionHistory更改为具有2个外键到同一个表 请原谅我的长码,但我必须把它全部粘贴。 以下代码的最后一行引发异常。 namespace Data.Model { public class Position { [DatabaseGenerated(System.ComponentModel.DataAnnotations.DatabaseGeneratedOption.Identity)] public int PositionID { get; set; } [Required(ErrorMessage = "Position name is required.")] [StringLength(20, MinimumLength = 3, ErrorMessage = "Name should not be longer than 20 characters.")] [Display(Name = "Position name")] public string name { get; […]

一次捕获多个异常?

只是简单地捕获System.Exception就不鼓励了。 相反,只有“已知的”例外应该被捕获。 现在,这有时会导致不必要的重复代码,例如: try { WebId = new Guid(queryString["web"]); } catch (FormatException) { WebId = Guid.Empty; } catch (OverflowException) { WebId = Guid.Empty; } 我想知道:是否有一种方法来捕获这两个异常,只调用WebId = Guid.Empty调用一次? 给出的例子很简单,因为它只是一个GUID 。 但想象一下代码在多次修改对象的位置,如果其中一个操作以预期的方式失败,则需要“重置”该object 。 但是,如果出现意想不到的例外情况,我还是要把这个提高一些。

查找传递给函数的变量名称

让我用下面的例子来解释我的问题: public string ExampleFunction(string Variable) { return something; } string WhatIsMyName = "Hello World"'; string Hello = ExampleFunction(WhatIsMyName); 当我将变量“WhatIsMyName”传递给示例函数时,我希望能够获取原始变量名称的字符串。 也许是这样的: Variable.OriginalName.ToString() 有没有办法做到这一点?

为什么编译错误“使用未分配的本地变量”?

我的代码如下 int tmpCnt; if (name == "Dude") tmpCnt++; 为什么会出现错误Use of unassigned local variable tmpCnt ? 我知道我没有明确地初始化它,但由于默认值表的值类型初始化0反正。 这个参考文件还提醒我: 请记住,在C#中使用未初始化的变量是不允许的。 但是为什么我必须明确地做,如果它已经默认完成? 如果我不这样做,它会不会得到表现? 就是想…

初始化是否需要左值到右值的转换? 是'int x = x;`UB?

C ++标准在第3.3.2节“声明点”中包含了一个“令人惊讶的”名称查找的半名示例: int x = x; 这初始化x本身,这是一个原始类型是未初始化 ,因此有一个不确定的值(假设它是一个自动变量)。 这实际上是不确定的行为? 根据4.1“左值到右值的转换”,对未初始化的值执行左值到右值的转换是未定义的行为。 右边的x是否经历了这种转换? 如果是这样,这个例子实际上是否有未定义的行为?

扩展方法和动态对象

我将总结我的问题到下面的代码片段。 List<int> list = new List<int>() { 5, 56, 2, 4, 63, 2 }; Console.WriteLine(list.First()); 上面的代码工作正常。 现在我尝试了以下 dynamic dList = list; Console.WriteLine(dList.First()); 但我得到RuntimeBinderException.Why是这样吗?

结构或联合中的'unsigned temp:3'是什么意思?

可能重复: 这个C ++代码是什么意思? 我正在尝试使用JNA将C结构映射到Java。 我遇到了一些我从未见过的东西。 struct定义如下: struct op { unsigned op_type:9; //—> what does this mean? unsigned op_opt:1; unsigned op_latefree:1; unsigned op_latefreed:1; unsigned op_attached:1; unsigned op_spare:3; U8 op_flags; U8 op_private; }; 你可以看到一些变量被定义为unsigned op_attached:1 ,我不确定这是什么意思。 这会影响为这个特定变量分配的字节数吗?