AFAIK void
は、プログラミング言語に関して何も意味しません。だからなぜ.Netフレームワークでそれはstruct
と宣言されていますか?.NETで戻り値の型が構造体として宣言されているのはなぜですか?
using System.Runtime.InteropServices;
namespace System
{
/// <summary>
/// Specifies a return value type for a method that does not return a value.
/// </summary>
/// <filterpriority>2</filterpriority>
[ComVisible(true)]
[Serializable]
[StructLayout(LayoutKind.Sequential, Size = 1)]
public struct Void
{
}
}
このような素敵な答えです。サー! –
回避策として使用する代わりに.netにボイドがうまく統合されていれば、より良いパフォーマンスを得られたでしょうか? –
@AppDeveloper、私はそれが性能に全く影響を及ぼさないと思っています。関数のコンパイル方法や値を返すかどうかを制御するだけです。 C#Void関数、またはVB Subsは値を返さないので、スタック値をプッシュ/ポップするためのILコードは単に省略されます。 – Kratz