Tag: C#的

什么是暗影?

在C#中, 阴影是什么意思? 我读过这个链接,但没有完全理解它。

为什么int * 衰减到int **而不是int ?

我试图理解types衰变的本质。 例如,我们都知道数组在特定的上下文中衰变成指针。 我尝试了解int[]如何等于int*但是二维数组如何与预期的指针types不一致。 这是一个testing用例: std::is_same<int*, std::decay<int[]>::type>::value; // true 如预期的那样返回true,但是这不是: std::is_same<int**, std::decay<int[][1]>::type>::value; // false 为什么这是不正确的? 我终于find了一种方法,使其返回true,这是通过使第一个维度指针: std::is_same<int**, std::decay<int*[]>::type>::value; // true 这个断言适用于任何types的指针,但最后一个是数组。 例如( int***[] == int****; // true )。 我可以解释为什么会发生这种情况吗? 为什么数组types与预期的指针types不一致?

指针的大小是多less?

指针的大小与指向它的types的大小是一样的,还是指针总是有固定的大小? 例如… int x = 10; int * xPtr = &x; char y = 'a'; char * yPtr = &y; std::cout << sizeof(x) << "\n"; std::cout << sizeof(xPtr) << "\n"; std::cout << sizeof(y) << "\n"; std::cout << sizeof(yPtr) << "\n"; 这会是什么结果呢? 如果sizeof(xPtr)返回4, sizeof(yPtr)返回1,还是2个指针实际返回相同的大小? 我问这个的原因是因为这些指针正在存储一个内存地址而不是它们各自存储地址的值。

如何从代码检索数据注释? (编程)

我正在使用System.ComponentModel.DataAnnotations为我的Entity Framework 4.1项目提供validation。 例如: public class Player { [Required] [MaxLength(30)] [Display(Name = "Player Name")] public string PlayerName { get; set; } [MaxLength(100)] [Display(Name = "Player Description")] public string PlayerDescription{ get; set; } } 我需要检索Display.Name注释值,以显示在一个消息,如select“播放器名称”是弗兰克。 ================================================== =============================== 另一个为什么我可能需要检索注释的例子: var playerNameTextBox = new TextBox(); playerNameTextBox.MaxLength = GetAnnotation(myPlayer.PlayerName, MaxLength); 我怎样才能做到这一点?

Windows.Forms.Timer或System.Threading.Timer

我有一个运行multithreading的应用程序。 每个线程都应该有一个计时器来检查该线程的作用域。 我的问题是:我应该使用哪个计时器,它们之间有什么区别?

C#拖放不适用于Windows 7

我已经有一段时间使用C#winforms的项目。 在Windows 7发布之前,我实现了一个拖放function。 像魅力一样工作。 但是,使用Windows 7时不起作用。 事件甚至没有被触发。 AllowDrop设置为true。 当订阅DragEnter它不会在Windows 7中调用(不知道Vista)。 但在XP上它一路工作。 该程序与pipe理权限运行。 在Windows 7与XP中的拖放有没有什么区别? 不知道是否相关,但我使用的是x64

通过自定义属性(json.net)从序列化中排除属性

我需要能够控制一个类的某些属性是如何被序列化的。 最简单的情况是[ScriptIgnore] 。 但是,我只希望这些属性能够被我所处理的这个特定的序列化情况所尊重 – 如果应用程序中的其他下游模块也想要序列化这些对象,则这些属性都不应该妨碍。 所以我的想法是在属性上使用自定义属性MyAttribute ,并使用一个知道查找该属性的钩子初始化JsonSerializer的特定实例。 乍一看,我没有看到JSON.NET中的任何可用钩子点将为当前属性提供PropertyInfo来执行此类检查 – 只有属性的值。 我错过了什么吗? 或者更好的方法来解决这个问题?

在C中调用一个名为stringvariables的函数

我想用一个variables来调用一个函数。 在C中可能吗? 其实,我想要做的是,从用户获取函数名称,并将其存储在一个variables。 现在我想调用存储名称的函数。 任何人都可以告诉我如何在C中做到这一点? 我想开发一个双人游戏的AI游戏引擎。 两个没有实现获胜游戏逻辑的主要function的程序将被馈送到游戏引擎。 让我清楚的是,程序名称将与实现获胜游戏逻辑的程序中的主要function相同。 所以当用户input第一个和第二个玩家的名字时,我可以将它们存储在两个不同的variables中。 现在,由于primefunctionfunction名称与程序名称相同,我打算用包含prog名称的variables调用函数。

为什么用大括号括起C代码块?

我正在查看一些C代码,并且已经注意到它充满了围绕代码块的这些大括号,没有任何控制结构。 看一看: //do some stuff . . . fprintf(stderr, "%.2f sec\n", (float)(clock() – t) / CLOCKS_PER_SEC); { //a block! why not? char *tmp_argv[3]; tmp_argv[0] = argv[0]; tmp_argv[1] = str; tmp_argv[2] = prefix; t = clock(); fprintf(stderr, "[bwa_index] Convert nucleotide PAC to color PAC… "); bwa_pac2cspac(3, tmp_argv); fprintf(stderr, "%.2f sec\n", (float)(clock() – t) / CLOCKS_PER_SEC); } […]

如何在wpf中使用RelayCommand?

如何在wpf中使用RelayCommand ?