Tag: C#的

在cmake中,如何testing编译器是否是Clang?

我们有一套跨平台的CMake构build脚本 ,我们支持使用MSVC和GCC构build。 我们正在尝试Clang ,但我不知道如何testing编译器是否与我们的CMake脚本Clang。 我应该testing一下,看看编译器是否是Clang? 我们目前使用MSVC和CMAKE_COMPILER_IS_GNU<LANG>分别testingMSVC和GCC。

在Asp.Net MVC中设置“主页”

在asp.net MVC中,“主页”(即打到www.foo.com时显示的path)被设置为Home / Index。 这个值在哪里存储? 我怎样才能改变“主页”? 在主控制器的索引操作中,有没有比使用RedirectToRoute()更优雅的东西? 我尝试在我的项目中寻找Home / Index,并找不到引用,也不能在IIS中看到任何内容(6)。 我查看了根目录下的default.aspx页面,但似乎没有做任何相关的事情。 谢谢

如何在* .cpp文件中实现静态类成员函数?

是否有可能在* .cpp文件中实现static类成员函数,而不是在头文件中执行它? 所有的static函数都是inline吗?

为什么最负的int值会导致模糊函数重载的错误?

我正在学习C ++中的函数重载,并且遇到了这个问题: void display(int a) { cout << "int" << endl; } void display(unsigned a) { cout << "unsigned" << endl; } int main() { int i = -2147483648; cout << i << endl; //will display -2147483648 display(-2147483648); } 从我的理解,在int范围(在我的情况下int是4字节)给出的任何值将调用display(int) ,超出此范围的任何值将是不明确的(因为编译器无法决定调用哪个函数)。 它对整个int值的范围是有效的,除了最小值,即-2147483648 ,其中编译失败并带有错误 重载display(long int)调用是不明确的 但是将相同的值2147483648 int并打印该值将会产生2147483648 。 我真的与这种行为混淆。 为什么只有当最负数字通过时才会观察到这种行为? (如果一个short和-32768使用,行为是一样的 – 事实上,在任何情况下,负数和正数都有相同的二进制表示) 使用的编译器:g ++(GCC)4.8.5

memmove和memcpy有什么区别?

memmove和memcpy什么区别? 你通常使用哪一个?

是否可以*在分配的内存上使用free()?

我正在学习计算机工程,还有一些电子课程。 我从我的两位教授(这些课程)听说,有可能避免使用free()函数(在malloc() , calloc()等之后),因为分配的内存空间可能不会再被使用分配其他内存。 也就是说,例如,如果你分配了4个字节然后释放它们,你将有4个字节的空间可能不会再被分配:你将会有一个漏洞 。 我觉得这很疯狂:你不能在没有释放它的情况下在堆上分配内存,而不能有一个非玩具程序 。 但是我没有足够的知识来解释为什么对每个malloc()必须有一个free() 。 所以:有没有在不使用free()情况下使用malloc()情况? 如果没有,我怎么能向我的教授解释呢?

覆盖==运算符。 如何比较为空?

可能重复: 如何在没有无限recursion的情况下检查'=='运算符超载的空值? 这可能是一个简单的答案,但它似乎逃避我。 这是一个简单的例子: public class Person { public string SocialSecurityNumber; public string FirstName; public string LastName; } 假设对于这个特定的应用程序来说,如果社会安全号码匹配,并且两个名称都匹配,那么我们指的是同一个“人”是有效的。 public override bool Equals(object Obj) { Person other = (Person)Obj; return (this.SocialSecurityNumber == other.SocialSecurityNumber && this.FirstName == other.FirstName && this.LastName == other.LastName); } 为了保持一致,我们重写==和!=运算符,对于团队中不使用.Equals方法的开发人员。 public static bool operator !=(Person person1, Person person2) { return ! person1.Equals(person2); […]

一个枚举类可以转换为基础types?

有没有办法将enum class字段转换为基础types? 我认为这是自动的,但显然不是。 enum class my_fields : unsigned { field = 1 }; unsigned a = my_fields::field; 海湾合作委员会拒绝了这项任务。 error: cannot convert 'my_fields' to 'unsigned int' in assignment 。

如何将msbuild升级到C#6?

我想在我的项目中使用C#6(空传播,其他function)。 我已经在我的电脑上安装了VS 2015,它的function非常出色,并且构build了类似的testing代码 var user = new SingleUserModel(); //all model fields are null var test = user.User?.Avatar?["blah"]; 但是当我把我的项目推到回购和CI开始build立它,构build失败,因为不受支持? 。 我也在CI服务器上安装了VS2015,但是它不会使用它。 我能做什么? CI – CruiseControl .NET与C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe

如何通过XElement放置属性

我有这个代码: XElement EcnAdminConf = new XElement("Type", new XElement("Connections", new XElement("Conn"), // Conn.SetAttributeValue("Server", comboBox1.Text); //Conn.SetAttributeValue("DataBase", comboBox2.Text))), new XElement("UDLFiles"))); //Conn. 如何把属性给康恩? 我想把这个属性标记为注释,但是如果我在定义了EcnAdminConf之后尝试将属性设置为Conn, EcnAdminConf它们不是visibe …所以我想设置它们,所以XML开始看起来像这样: <Type> <Connections> <Conn ServerName="FAXSERVER\SQLEXPRESS" DataBase="SPM_483000" /> <Conn ServerName="FAXSERVER\SQLEXPRESS" DataBase="SPM_483000" /> </Connections> <UDLFiles /> </Type>