Tag: C#的

为什么我们不能有“char”枚举types

我想知道为什么我们不能有“字符”作为基础枚举types。 因为我们有byte,sbyte,int,uint,long,ulong,short,ushort作为基础枚举types。 第二什么是一个枚举的默认基础types?

string文字的大小

下面的代码 #include <iostream> using namespace std; int main() { const char* const foo = "f"; const char bar[] = "b"; cout << "sizeof(string literal) = " << sizeof( "f" ) << endl; cout << "sizeof(const char* const) = " << sizeof( foo ) << endl; cout << "sizeof(const char[]) = " << sizeof( bar ) […]

复制一个结构到另一个

我知道我可以通过成员复制结构成员,而不是我可以在结构上做一个memcpy ? 这样做是可取的吗? 在我的结构中,我有一个string也作为成员,我不得不复制到具有相同成员的另一个结构。 我怎么做?

C#Array.Contains()编译错误

我试图在C#中使用Array.Contains()方法,由于某种原因,它不能编译,即使我相信我正在使用C#4.0,C#应该支持3.0和更高版本。 if (! args.Contains ("-m")) Console.WriteLine ("You must provide a message for this commit."); 我得到这个错误: Main.cs(42,15):错误CS1061:'System.Array'不包含'Contains'的定义,并且没有扩展方法'Contains'接受types'System.Array'的第一个参数可以被find(你缺less使用指令或程序集引用?) 我从命令行编译,没有选项:“csc Main.exe”。

CryptographicException在试图导出X509私钥的RSAParameters时“密钥无法在指定状态下使用”

我盯着这一段时间,感谢MSDN文档,我无法弄清楚发生了什么事情。 基本上我是从光盘加载一个PFX文件到X509Certificate2并尝试使用公钥encryption一个string,并使用私钥解密。 为什么我感到困惑:当我将引用传递给RSACryptoServiceProvider本身时,encryption/解密工作: byte[] ed1 = EncryptRSA("foo1", x.PublicKey.Key as RSACryptoServiceProvider); string foo1 = DecryptRSA(ed1, x.PrivateKey as RSACryptoServiceProvider); 但是如果导出并传递RSAParameter : byte[] ed = EncryptRSA("foo", (x.PublicKey.Key as RSACryptoServiceProvider).ExportParameters(false)); string foo = DecryptRSA(ed, (x.PrivateKey as RSACryptoServiceProvider).ExportParameters(true)); …它会抛出一个“密钥在指定状态下无效”。 尝试将私钥导出到RSAParameterexception。 请注意PFX生成的证书被标记为可导出(即,我在创build证书时使用了pe标志)。 任何想法是什么导致例外? static void Main(string[] args) { X509Certificate2 x = new X509Certificate2(@"C:\temp\certs\1\test.pfx", "test"); x.FriendlyName = "My test Cert"; X509Store store […]

当窗口最大化/不最大化时的事件

当您最大化一个表单或取消最大化时是否有事件被触发? 在你说Resize或SizeChanged之前:只有Size实际上改变才会被触发。 如果你的窗户大小与最大化的窗户大小相同,他们不会开火。 地点看起来像下一个最好的赌注,但这再次感觉就像赌博的巧合。

如何使用在macports中安装的gcc?

我安装了gcc 4.6。 从macports(支持C ++ 0x)。 但是当我检查“gcc –version”时,显示的是旧版本。 如何使用macports安装的新gcc?

xml.LoadData – 根级别的数据无效。 1号线,位置1

我试图parsing一些WiX安装程序中的XML。 XML将成为从Web服务器返回的所有错误的对象。 我在这个代码中得到问题标题中的错误: XmlDocument xml = new XmlDocument(); try { xml.LoadXml(myString); } catch (Exception ex) { System.IO.File.WriteAllText(@"C:\text.txt", myString + "\r\n\r\n" + ex.Message); throw ex; } myString是这个(在text.txt的输出中看到) <?xml version="1.0" encoding="utf-8"?> <Errors></Errors> text.txt出来看起来像这样: <?xml version="1.0" encoding="utf-8"?> <Errors></Errors> Data at the root level is invalid. Line 1, position 1. 我需要这个XMLparsing,所以我可以看到,如果我有任何错误。 编辑 这个问题与标记不重复。 在这个问题中,提出问题的人使用LoadXml来parsingXML文件。 我正在parsing一个string,这是LoadXml的正确使用

如何使用C#从url下载图片

有没有一种方法可以直接从c#中的URL下载图像,如果url没有在链接的末尾的图像格式? url示例: https://fbcdn-sphotos-ha.akamaihd.net/hphotos-ak-xpf1/v/t34.0-12/10555140_10201501435212873_1318258071_n.jpg?oh=97ebc03895b7acee9aebbde7d6b002bf&oe=53C9ABB0&__gda__=1405685729_110e04e71d969d392b63b27ec4f4b24a 我知道如何在url以图片格式结尾时下载图片。 例如: http://img1.wikia.nocookie.net/__cb20101219155130/uncyclopediahttp://img.dovov.com7/70/Facebooklogin.png

比较两个阶乘而不计算

有没有什么办法可以比较两个数字中哪个因子数字更大而没有计算? 场景是我创buildac#控制台应用程序,它需要两个阶乘input 123!!!!!! 456!!! 我所要做的就是比较哪个因子值大于其他因子,我所做的那段代码是 try { string st = Console.ReadLine(); Int64 factCount = 0; while (st.Contains('!')) { factCount = st.Where(w => w == '!').Count(); st = st.Replace('!', ' '); }; decimal result = 1 ; for (Int64 j = 0; j < factCount; j++) { UInt64 num = Convert.ToUInt64(st.Trim()); for (UInt64 x = num; […]