小编jus*_*god的帖子

有什么区别,为什么Switch Case在C#中这样工作?

我有两个功能,一个可以编译,另一个不能.有什么不同?

函数1是否假设案例1总是被命中,或者只是编译器问题?

public void Test(int x)
{
    switch (x)
    {
        case 1:
            uint cId = (uint)3;
            break;

        case 2:
            cId = (uint)5; //NO ERROR HERE. WHY?
            break;
    }
}

public void DeclaringInsideSwitch(int x)
{
    uint tst = 0;
    switch (x)
    {
        case 1:
            int y = 3;
            uint variable = tst;
            break;

        case 2:
            variable++; //ERROR HERE. WHY?
            break;
    }
}
Run Code Online (Sandbox Code Playgroud)

我当然尝试搜索"在C#中声明切换案例中的变量",但对我来说,它似乎只是C#中的某种错误,为了向后兼容而保留.

//在得到已经回答的警告之后,我的问题现在可以减少到它的真正含义.

为什么:

int x;
x++;
Run Code Online (Sandbox Code Playgroud)

这不行吗?

.net c# switch-statement

24
推荐指数
2
解决办法
2808
查看次数

如何通过WinDBG在Dump中查找非托管内存中的内容

我在WinDbg命令中运行转储文件

地址-摘要

我的结果是这样的

Usage Summary   RgnCount    Total Size  %ofBusy %ofTota

    Free            3739    7ff5`dbbae000 ( 127.960 Tb)                 99.97%
    <unknown>       1677    5`680a1000 (  21.626 Gb)    53.31%       0.02%
    Heap            20349   4`0049f000 (  16.005 Gb)    39.45%       0.01%
    Stack           230 0`a3e90000 (   2.561 Gb)    6.31%        0.00%
Run Code Online (Sandbox Code Playgroud)

如何在堆中找到内容?什么是对象或什么是类型?

是托管堆,而堆是托管堆?

很难问这样的问题,所以我添加了更多信息

这是我的C#示例代码

class Program
{

    public static int[] arr;
    public static AllocateUnmanagedMemory cls;


    static void Main(string[] args)
    {
        const int GBSize = 1 * 1024 * 1024 * 1024/ sizeof(int);

        Console.WriteLine("Allocating");

        arr = new int[GBSize];

        cls = …
Run Code Online (Sandbox Code Playgroud)

heap unmanaged windbg dump sos

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

为什么在Visual C++中STL:"C"不大于"b"

当B大于a时,为什么C不大于b?

Visual C++ 2017 STL中的代码:

void main ()
{       
    cout << ("A" > "A") << endl;
    cout << ("a" > "A")<< endl;
    cout << ("B" > "a")<< endl;
    cout << ("b" > "B")<< endl;
    cout << ("C" > "b")<< endl; 
    cout << ("c" > "C")<< endl;
    cout << ("AA" > "c")<< endl;
    cout << ("Aa" > "AA")<< endl;
    cout << ("aA" > "AA")<< endl;
    cout << ("aa" > "aA")<< endl;
    cout << ("BA" > "aa")<< endl;
    cout << ("Ba" > …
Run Code Online (Sandbox Code Playgroud)

c++

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

标签 统计

.net ×1

c# ×1

c++ ×1

dump ×1

heap ×1

sos ×1

switch-statement ×1

unmanaged ×1

windbg ×1