相关疑难解决方法(0)

哪个更快?ByVal还是ByRef?

在VB.NET中,哪个更快用于方法参数,ByVal或者ByRef

此外,它在运行时(RAM)消耗更多资源?


我仔细阅读了这个问题,但答案不适用或不够具体.

vb.net performance byref byval

35
推荐指数
4
解决办法
3万
查看次数

通过参考性能C#.net传递值和传递

我基本上创建了一个轻量级类,它传递了大约10个参数,它不会改变这些参数,它只是在构造函数中将它们存储在本地.

一些是引用类型(字符串,类),其他是值类型(int,bool,enums).

我的问题是我应该用关键字'ref'传递这些(除了我的类)吗?

我在这里考虑的是表现.

c#

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

使用ref而不是返回相同类型的性能成本?

嗨这是真的困扰我的事情,我希望有人能给我一个答案.我一直在阅读ref(和out),我正在试图弄清楚我是否正在使用refs 减慢我的代码.通常我会替换类似的东西:

int AddToInt(int original, int add){ return original+add; }
Run Code Online (Sandbox Code Playgroud)

void AddToInt(ref int original, int add){ original+=add; } // 1st parameter gets the result
Run Code Online (Sandbox Code Playgroud)

因为我的眼睛这个

AddToInt(ref _value, _add);
Run Code Online (Sandbox Code Playgroud)

比这更容易阅读和编码

_value = AddToInt(_value, _add);
Run Code Online (Sandbox Code Playgroud)

我确切地知道我在使用代码时正在做什么ref,而不是返回一个值.但是,性能是我认真对待的,显然,当你使用refs时,解除引用和清理会慢得多.

我想知道的是为什么我读的每个帖子都说你通常会传递的地方很少ref(我知道这些例子是人为的,但我希望你能得到这个想法),当我觉得这个ref例子是更小,更清洁,更准确.

我也很想知道为什么ref真的比返回一个值类型慢 - 对我来说,在我看来,如果我要在返回它之前编辑很多函数值,那么引用实际变量会更快在从内存中清除之前不久编辑它而不是该变量的实例.

c# performance ref

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

在适合C#性能的方法中使用'ref'关键字作为字符串参数?

作为一个对.NET管道不太了解的程序员,我想知道使用ref字符串作为参数是否有利于C#的性能?

假设我有一个像这样的方法:

public int FindSomething(string text)
{
    //Finds a char in the text and returns its index
}
Run Code Online (Sandbox Code Playgroud)

当我使用这个方法时,编译器会为方法创建一个文本副本,对吧?

但是,如果我使用ref关键字:

public int FindSomething(ref string text)
{
    //Finds a char in the text and returns its index
}
Run Code Online (Sandbox Code Playgroud)

..编译器应该只发送文本的指针地址...

那么使用ref这样的性能有好处吗?

c# string performance ref

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

标签 统计

c# ×3

performance ×3

ref ×2

byref ×1

byval ×1

string ×1

vb.net ×1