你们可以帮我解决一下如果两个变量来自C#中的同一类型吗?我已经搜索了几天这个答案,我找到的就是我已经知道的:使用typeof()和object.GetType()。我认为两个人一起工作会管理这个,但他们只是没有。之后,深入研究MS文档,我理解为什么(typeof()和a.GetType()返回不同的数据),但我会把这里放在我第一次尝试的地方。
我尝试过类似的事情:
if(varA.GetType() == typeof(varB.GetType()))
{
//Do something...
}
我想要类似......
if(varB.SameTypeOf(varB)) //In this example returns true because both are type of int
{
//So something...
}
另外,我尝试过 System.Type ,但它并不是我想要的。
答案 0 :(得分:1)
typeof
用于从类型名称中获取类型对象。在您的情况下,您应该可以使用a.GetType() == b.GetType()
。根据您尝试做的具体情况,您也可以使用a.GetType().IsAssignableFrom(b.GetType())
。
Type
还有许多其他有用的方法来完成类似于您正在做的事情: