小编Pau*_*aul的帖子

安全(在C#意义上)用指针实现某些东西的方法

            ...
            {
                int *r1, *r2;
                r1 = GetCorrectRegister(first);
                r2 = GetCorrectRegister(second);
                switch ((OpCode)current.opcode)
                {
                    case OpCode.ADDR:
                        r2 = r1 + r2;
                        break;
                }
            }
            ...
Run Code Online (Sandbox Code Playgroud)

这是解决此问题的明显,最简单的方法.但是,如果我能避免它,我宁愿不使用不安全的方法.基本上,我有一堆代表寄存器的整数.有一些汇编指令将寄存器助记符作为参数.我不希望有逻辑来确定在switch语句的每个分支中分配哪个变量,或者使用某种类型的kludgey GetRegisterValue(助记符)和SetRegisterValue(助记符)函数.是否有一些C#方式做类似的事情?

c# pointers

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

标签 统计

c# ×1

pointers ×1