小编dls*_*sou的帖子

C#将int类型的对象转换为可以为空的枚举

我只需要能够将一个对象转换为可以为空的枚举.对象可以是enum,null或int.谢谢!

public enum MyEnum { A, B }
void Put(object value)
{
    System.Nullable<Myenum> val = (System.Nullable<MyEnum>)value;
}

Put(null);     // works
Put(Myenum.B); // works
Put(1);        // Invalid cast exception!!
Run Code Online (Sandbox Code Playgroud)

c# enums nullable

17
推荐指数
2
解决办法
2万
查看次数

如何在参数是可选的时获取默认构造函数

我正在使用Type.GetConstructor(Type.EmptyTypes)获取类的默认构造函数.如果类具有没有参数(class A)的默认构造函数,则它可以工作.但是如果一个类有一个带有所有参数optional(class B)的构造函数,它就不起作用.程序不知道可选参数是什么,因为它只需要默认的构造函数.我可以使用哪些语句使其适用于这两种情况?谢谢,感谢任何帮助!

public class A
{
    public A() {}
} 

public class B
{
    public B(int i = 0, string str = "") {}
}
Run Code Online (Sandbox Code Playgroud)

c# reflection constructor

9
推荐指数
1
解决办法
6966
查看次数

如何在maven下编译C#解决方案

我们有一个用Java和C#两种语言实现的应用程序.Java应用程序使用maven来构建和发布过程,现在我需要将C#的构建集成到maven中.它是使用Visual Studio 2010实现的.有谁知道如何做到这一点?我现在可以使用的最佳插件是什么.非常感谢!

更新:

到目前为止,我发现了以下4个选项.有没有人成功使用过这些?另外,我最终需要将构建/发布过程移植到Linux,并且可能使用Mono在maven中编译.非常感谢任何信息,谢谢.

NPanday http://incubator.apache.org/npanday/docs/1.2/guide/maven/project-types.html

Plexus http://maven.apache.org/plugins/maven-compiler-plugin/non-javac-compilers.html http://snapshots.repository.codehaus.org/org/codehaus/plexus/plexus-compiler-csharp/ 1.6-SNAPSHOT /

Maven Dotnet插件 http://maven-dotnet-plugin.appspot.com/

教程:http: //docs.codehaus.org/display/MAVENUSER/Using+Maven+to+manage+.NET+projects

c# build maven

7
推荐指数
1
解决办法
6158
查看次数

如何在字符串流的开头插入字符串

仅作为示例而非实际代码:

stringstream ss;
ss << " world!";

string hello("Hello");

// insert hello to beginning of ss ??
Run Code Online (Sandbox Code Playgroud)

感谢所有答复,我也找到了下面的代码,该代码可以正常工作:

ostringstream& insert( ostringstream& oss, const string& s )
{
  streamsize pos = oss.tellp();
  oss.str( s + oss.str() );
  oss.seekp( pos + s.length() );
  return oss;
}
Run Code Online (Sandbox Code Playgroud)

c++ stringstream

5
推荐指数
2
解决办法
2万
查看次数

C#VS 2010在编辑时报告错误,但它编译并成功运行

我有CodeDom生成的可选参数.例如:

class Square
{
    public Square([Optional()] int side) { }
}
Run Code Online (Sandbox Code Playgroud)

我有一个电话声明:

Square sq = new Square();
Run Code Online (Sandbox Code Playgroud)

在我编辑时,我的错误列表窗口显示:'Square'不包含带0参数的构造函数'

但它编译并成功运行.如何摆脱"错误列表"窗口中的错误?谢谢!

c# optional-parameters visual-studio-2010 visual-studio

3
推荐指数
1
解决办法
674
查看次数

C#如何获得非系统程序集

我需要实例化一个只在程序集或mscorlib中定义的对象,而不是在任何其他系统程序集中.目前我这样做:

Type type;
Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies();
foreach (Assembly assembly in assemblies)
{
    string fullName = name + "," + assembly.FullName;
    type = Type.GetType(fullName);
    if (type != null) break;
}
if (type != null) 
    object obj = Activator.CreateInstance(type);
Run Code Online (Sandbox Code Playgroud)

有没有办法优化此循环以跳过系统程序集(但不是mscorlib)?我需要多次调用它.

谢谢!

c# assemblies

1
推荐指数
1
解决办法
2227
查看次数

C++浮点存储

可能重复:
处理浮点数中的精度问题

码:

float flt = 78983636;  // stores 78983632. as seen in debugger
flt = 79282056;        // stores 79282056.
Run Code Online (Sandbox Code Playgroud)

为什么它不能准确存储第一个值,但能够为更大的第二个值?

c++ floating-point

1
推荐指数
1
解决办法
918
查看次数