Repository navigation
DE CSharp Keyword safe
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Handbuch C# · Praktischer Leitfaden
Vorschaumodifikator des aktualisierten Speichersicherheitsmodells: Der Autor markiert die Deklaration ausdrücklich so, dass kein unsicherer Kontext des Aufrufers erforderlich ist.
Speichern Sie dieses Beispiel separat als Example.cs. Führen Sie es unabhängig von den anderen Beispielen dieser Seite aus.
Example.cs:
// PROJECT-EXAMPLE
class ManagedValue { public int Count { get; set; } }Dieses kurze Beispiel verwendet C# 14. Es implementiert nicht das hier nicht verfügbare Preview-Konstrukt safe.
public static safe extern int Method();Dies ist eine Vorschau von C# 15 / .NET 11. Die offiziellen Regeln erfordern LangVersion=Vorschau und separate Aktivierung aktualisierter Speichersicherheitsregeln für ihre Anwendung. Das aktuelle C# 14 unterstützt diese Deklarationen nicht.
Status: Vorschau; Die aktuelle Konfiguration C# 14 / .NET 10 unterstützt diese Beispiele nicht.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
public static class Program
{
public static async Task Main(string[] args)
{
Console.WriteLine(Native.GetCurrentProcessId());
}
}
public static class Native { [DllImport("kernel32.dll")] public static safe extern uint GetCurrentProcessId(); }using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
public static class Program
{
public static async Task Main(string[] args)
{
Union value = new() { Integer = 1065353216 };
Console.WriteLine(value.Real);
}
}
[StructLayout(LayoutKind.Explicit)] public struct Union { [FieldOffset(0)] public safe int Integer; [FieldOffset(0)] public safe float Real; }Offizielle Quelle: Microsoft Learn.
ClassicUO — Bad Newbie & C# Scripts IDE