Tag: C#的

快速计算64位整数的log2

一个伟大的编程资源Bit Twiddling Hacks提出了( 这里 )计算一个32位整数的log2的方法: #define LT(n) n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n static const char LogTable256[256] = { -1, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, LT(4), LT(5), LT(5), LT(6), LT(6), LT(6), LT(6), LT(7), LT(7), LT(7), […]

何时以及为什么我需要在C ++中使用cin.ignore()?

我用C ++编写了一个非常基本的程序,要求用户input一个数字,然后input一个string。 令我惊讶的是,在运行程序时,它从来没有停止要求string。 它只是跳过它。 在对StackOverflow进行一些阅读之后,我发现我需要添加一行说: cin.ignore(256, '\n'); 在获取stringinput的行之前。 增加了这个问题,并使程序工作。 我的问题是为什么C ++需要这个cin.ignore()行,我怎么能预测什么时候我需要使用cin.ignore() ? 这是我写的程序: #include <iostream> #include <string> using namespace std; int main() { double num; string mystr; cout << "Please enter a number: " << "\n"; cin >> num; cout << "Your number is: " << num << "\n"; cin.ignore(256, '\n'); // Why do I […]

二进制文字?

在代码中,我有时会看到人们以hex格式指定常量,如下所示: const int has_nukes = 0x0001; const int has_bio_weapons = 0x0002; const int has_chem_weapons = 0x0004; // … int arsenal = has_nukes | has_bio_weapons | has_chem_weapons; // all of them if(arsenal &= has_bio_weapons){ std::cout << "BIO!!" } 但在这里使用hex格式对我来说没有任何意义。 有没有办法直接在二进制? 像这样的东西: const int has_nukes = 0b00000000000000000000000000000001; const int has_bio_weapons = 0b00000000000000000000000000000010; const int has_chem_weapons = 0b00000000000000000000000000000100; […]

如果语句匹配多个值

任何更简单的方法来写这个if语句? if (value==1 || value==2) 例如…在SQL中,你可以说where value in (1,2)而不是在where value=1 or value=2 。 我正在寻找的东西,可以与任何基本的types…string,整型等

如何一次读取一行或一个整个文本文件?

我在一个介绍文件的教程(如何从\到文件中读写) 首先,这不是一项功课,这只是我寻求的一般帮助。 我知道如何一次读一个单词,但是我不知道如何一次读一行或怎样读整个文本文件。 如果我的文件包含1000个字怎么办? 阅读每个单词是不实际的。 我的文本文件(读取)包含以下内容: 我喜欢玩我爱读的游戏我有2本书 这是我迄今为止所取得的成就: #include <iostream> #include <fstream> using namespace std; int main (){ ifstream inFile; inFile.open("Read.txt"); inFile >> 是否有任何可能的方法来读取整个文件,而不是阅读每行或每个单词分开?

你能捕捉到C#代码中的本机exception吗?

在C#代码中,你能捕捉到一些非托pipe库深处抛出的本地exception吗? 如果是这样,你需要做不同的事情来抓住它,或做一个标准的尝试…赶上得到它?

在C#中“T”是什么意思?

我有一个VB背景,我转换到C#为我的新工作。 一般来说,我也试图在.NET中变得更好。 我已经在人们发布的样本中看到了很多关键字“T”。 C中的“T”是什么意思? 例如: public class SomeBase<T> where T : SomeBase<T>, new() T做什么? 我为什么要使用它?

为什么在等待后HttpContext.Current为空?

我有以下testingWebAPI代码,我没有在生产中使用WebAPI,但是由于我在这个问题上的讨论,我做了这个: WebAPIasynchronous问题 无论如何,这是有问题的WebAPI方法: public async Task<string> Get(int id) { var x = HttpContext.Current; if (x == null) { // not thrown throw new ArgumentException("HttpContext.Current is null"); } await Task.Run(() => { Task.Delay(500); id = 3; }); x = HttpContext.Current; if (x == null) { // thrown throw new ArgumentException("HttpContext.Current is null"); } return "value"; } […]

C# – 如何从外部程序集访问内部类

有一个我不能修改的程序集(供应商提供),它具有返回对象types但实际上是内部types的方法。 如何从我的程序集中访问对象的字段和/或方法? 请记住,我无法修改供应商提供的程序集。 本质上,这是我的: 来自供应商: internal class InternalClass public string test; end class public class Vendor private InternalClass _internal; public object Tag {get{return _internal;}} end class 从我的程序集使用供应商组装。 public class MyClass { public void AccessTest() { Vendor vendor = new Vendor(); object value = vendor.Tag; // Here I want to access InternalClass.test } }

编译Python到机器代码是否可行?

将Python(可能通过中间的C表示)编译成机器代码有多大的可行性? 据推测,它将需要链接到一个Python运行时库,Python标准库中的任何部分都是Python本身需要编译(并链接)。 另外,如果要对expression式进行dynamic评估,则需要捆绑Python解释器,但也许是不允许使用的Python子集仍然有用。 它会提供任何速度和/或内存使用优势? 据推测,Python解释器的启动时间将被消除(尽pipe共享库在启动时仍然需要加载)。