小编nht*_*rnm的帖子

在C#中有一个List <T>的方法,比如在c ++中为vector <T>重新调整大小

当我使用resize(int newsize)在C++对vector<T>,这意味着sizevector被设置为newsize与所述索引中的范围上运行[0..newsize).如何在C#中做同样的事情List<T>
更改List<T>属性Capacity只会更改Capacity但保持Count相同,此外索引仍然在范围内[0..Count).请帮帮我.

PS想象我有vector<T> tmp一个tmp.size() == 5我不能引用tmp[9],但是当我然后使用tmp.resize(10)我可以引用tmp[9].在C#如果我有List<T> tmptmp.Count == 5我不是指tmp[9](IndexOutOfRangeException),但即使当我设置tmp.Capacity=10我将无法指tmp[9]堂妹的tmp.Count依然是5.我想找到C#调整大小的一些比喻.

c# c++ list vector

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

如何设置CultureInfo.InvariantCulture默认?

当我在C#中有这样的代码时:

double a = 0.003;
Console.WriteLine(a);
Run Code Online (Sandbox Code Playgroud)

它打印"0,003".

如果我有另一段代码:

double a = 0.003;
Console.WriteLine(a.ToString(CultureInfo.InvariantCulture));
Run Code Online (Sandbox Code Playgroud)

它打印"0.003".

我的问题是我需要一个点作为十进制标记,但C#默认使用逗号.此外,我不想只打印出一个双变量来输入如此长的代码.

c# double

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

ofstream会自动关闭其文件吗?

可能重复:
我需要关闭std :: fstream吗?

int main() {
    ofstream a("a.txt");
    a << "A" << endl;
    //a.close();
}
Run Code Online (Sandbox Code Playgroud)

这工作正常,但是不是必须在程序结束时关闭文件?

c++ ofstream

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

使用new时的数组初始化

在C#中,我可以这样做:

char[] a = new char[] {'a', 'a', 'a'};
Run Code Online (Sandbox Code Playgroud)

但我可以在C++中做类似的事情吗?我试过了:

char *a = new char [] {'a', 'a', 'a'};
Run Code Online (Sandbox Code Playgroud)

但它没有编译.

c# c++ arrays initialization

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

如何在python中方便地读取数字?

x1, y1, a1, b1, x2, y2 = int(input()), int(input()), int(input()), int(input()), int(input()), int(input())
Run Code Online (Sandbox Code Playgroud)

我的问题是在新行上读取每个给出的6个数字.如何比上面的代码更简洁地做到这一点?

python

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

Python版的C++ all_of

有没有更好的方法(使用内置函数)来重写下面的代码:

def all_of(iterable, predicate):
    for elem in iterable:
        if not predicate(elem):
            return False
    return True
Run Code Online (Sandbox Code Playgroud)

c++ python built-in

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

如何更改控制台应用程序的堆栈大小?

可能重复:
如何更改.NET程序的堆栈大小?

我想更改以下控制台应用程序的堆栈大小:

using System;
using System.IO;

class Test {

    static int n;
    static bool[] us;
    static int[,] matr;

    static void dfs(int a) {
        us[a] = true;
        for (int b = 0; b < n; b++) {
            if (!us[b]) {
                dfs(b);
            }
        }
    }

    static void Main() {
        StreamReader input = new StreamReader("input.txt");
        StreamWriter output = new StreamWriter("output.txt");
        string[] snum = input.ReadLine().Split(' ');
        n = int.Parse(snum[0]);      // number of vertices
        int m = int.Parse(snum[1]);  // number of edges
        us = …
Run Code Online (Sandbox Code Playgroud)

c# stack-overflow stack-size

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

C# Console.WriteLine(double) 是否以全精度写入此变量?

我所说的“全精度”是指不会出现正确结果与我用 C# 程序计算的结果不同的情况。

我通过在 C# 和 C++ 下运行相同的测试(不使用 cout. precision())来检查这一点。我确信我的程序在 C# 和 C++ 下的 2 个变体在相同的测试中表现相似。

C# 上的示例代码。

double a;
//...code...
Console.WriteLine(a.ToString(CultureInfo.InvariantCulture));
Run Code Online (Sandbox Code Playgroud)

相同,但在 C++ 上。

double a;
//...code...
cout << a << endl;
Run Code Online (Sandbox Code Playgroud)

实际上,我的没有 cout. precision() 的 C++ 程序失败了,而只有 Console.WriteLine() 的 C# 程序通过了。

我知道发生这种情况是因为我的 C++ 程序以某种方式(也许是神奇地)截断了数字并且精度丢失了。但是通过所有测试是否意味着 C# 总是以全精度打印 doulbe 变量?

c# precision

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

自动初始化列表的类型

在下面的C++代码中,什么是类型atypeid回报St16initializer_listIPKcE

auto a = { "lol", "life" };
Run Code Online (Sandbox Code Playgroud)

c++ types initializer-list auto

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

在一行Python中从1到n求和

给定数量的n,我需要从发现数字的总和1n.样本输入和输出:

100
5050
Run Code Online (Sandbox Code Playgroud)

所以我提出了print(sum(range(int(input())+1)))解决问题的方法,但是需要花费很长时间O(n).显然,如果我们知道电话号码n,那么答案可以在一个太行给出:print(n * (n+1) / 2)但如何更换n使用input()仍使工作方案?

python

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