有没有什么可以用来确定一个types是否实际上是一个匿名types? 例如一个接口等? 目标是创build如下的东西… //defined like… public static T Get<T>(this IAnonymous obj, string prop) { return (T)obj.GetType().GetProperty(prop).GetValue(obj, null); } //… //And then used like… var something = new { name = "John", age = 25 }; int age = something.Get<int>("age"); 还是仅仅是一个匿名types的美丽? 没有什么可以识别自己,因为它需要一个新的形状? 注意 – 我意识到你可以为对象类写一个扩展方法,但在我看来,这似乎有点矫枉过正。
将double转换为int的最佳方法是什么? 应该使用演员阵容吗?
我正在从一个服务中下载一些图片,这些图片并不总是包含内容types,也没有提供我下载的文件的扩展名(呃,不要问)。 在.NET中确定图像格式的最佳方法是什么? 正在阅读这些下载的图像的应用程序需要有一个适当的文件扩展名或全部地狱打破。
我有一个模板class A template <unsigned int m> class A { public: A(int) {} }; 其中有一个来自int的构造函数。 我有一个操作: template<unsigned int m> A<m> operator+(const A<m>&, const A<m>&) { retrun A<m>(0); } 但是当我打电话给: A<3> a(4); A<3> b = a + 5; A<3> c = 5 + a; 我想int被隐式转换为A,但是编译器会抛出错误。 有什么优雅的方式来启用隐式转换,而不使用这样的解决scheme: a + A<m>(5) operator+<3>(a, 5)
我想在Android上编写简单的STL(几何数据文件)查看器应用程序,但是我无法识别系统的格式。 我在我的应用清单文件中写的是: <intent-filter> <action android:name="android.intent.action.VIEW" /> <action android:name="android.intent.action.EDIT" /> <action android:name="android.intent.action.PICK" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="http" /> <data android:pathPattern=".*\\.stl" /> <data android:mimeType="application/sla" /> <data android:host="*" /> </intent-filter> 但目前我启动浏览器,并下载一些示例STL文件,下载被中断,我被报告的数据文件types是未知的系统。 我没有真正的Android设备,所以只使用模拟器,并为开发我在MonoDroid上使用C#(但我不认为这是真正的问题) 任何主题的想法? 先谢谢你。
我想将string转换为char数组,但不是char* 。 我知道如何将string转换为char* (通过使用malloc或我的方式发布在我的代码中) – 但这不是我想要的。 我只是想将string转换为char[size]数组。 可能吗? #include <iostream> #include <string> #include <stdio.h> using namespace std; int main() { // char to string char tab[4]; tab[0] = 'c'; tab[1] = 'a'; tab[2] = 't'; tab[3] = '\0'; string tmp(tab); cout << tmp << "\n"; // string to char* – but thats not what I […]
在C#中bool和Booleantypes有什么区别?
有没有办法在C#中覆盖返回types? 如果是的话,如果不是为什么,什么是推荐的做法呢? 我的情况是,我有一个抽象的基类和后裔的接口。 我想这样做(好吧不是真的,但作为一个例子!): public interface Animal { Poo Excrement { get; } } public class AnimalBase { public virtual Poo Excrement { get { return new Poo(); } } } public class Dog { // No override, just return normal poo like normal animal } public class Cat { public override RadioactivePoo Excrement { […]
在C ++中使用一个而不是另一个的优点和缺点是什么?
[注意:这个问题的原始标题是“ C(ish)风格的联合在C# ”,但杰夫的评论告诉我,显然这种结构被称为“歧视联盟”] 请原谅这个问题的冗长。 在我们已经有了一些类似的问题,但他们似乎集中在工会的记忆储蓄的好处或使用它的互操作性。 这是一个这样的问题的例子 。 我希望有一个工会types的东西有些不同。 我正在编写一些代码,生成看起来有点像这样的对象 public class ValueWrapper { public DateTime ValueCreationDate; // … other meta data about the value public object ValueA; public object ValueB; } 相当复杂的东西,我认为你会同意。 问题是, ValueA只能是一些特定的types(比如string , int和Foo (这是一个类),而ValueB可以是另一个小的types集合),我不喜欢把这些值当作对象(我想编码的温暖舒适的感觉与一些types的安全)。 所以我想写一个简单的小包装类来expression一个事实,即ValueA在逻辑上是对特定types的引用。 我打电话给class级Union因为我想要实现的是联盟概念。 public class Union<A, B, C> { private readonly Type type; public readonly A a; public readonly […]