System.OutOfMemoryException berlaku apabila CLR tidak dapat memperuntukkan memori yang mencukupi yang diperlukan.
System.OutOfMemoryException mewarisi daripada kelas System.SystemException.
Tetapkan rentetan -
string StudentName = "Tom"; string StudentSubject = "Maths";
Sekarang anda perlu memulakan dengan kapasiti yang diperuntukkan, iaitu panjang nilai awal -
StringBuilder sBuilder = new StringBuilder(StudentName.Length, StudentName.Length);
Sekarang jika anda cuba memasukkan nilai tambahan, pengecualian akan berlaku.
sBuilder.Insert(value: StudentSubject, index: StudentName.Length - 1, count: 1);
Pengecualian berikut berlaku -
System.OutOfMemoryException: Out of memory
Untuk menangkap ralat, cuba kod berikut -
Demonstrasi Langsung
using System; using System.Text; namespace Demo { class Program { static void Main(string[] args) { try { string StudentName = "Tom"; string StudentSubject = "Maths"; StringBuilder sBuilder = new StringBuilder(StudentName.Length, StudentName.Length); // Append initial value sBuilder.Append(StudentName); sBuilder.Insert(value: StudentSubject, index: StudentName.Length - 1, count: 1); } catch (System.OutOfMemoryException e) { Console.WriteLine("Error:"); Console.WriteLine(e); } } } }
Di atas mengendalikan OutOfMemoryException
dan menjana ralat berikut -Atas ialah kandungan terperinci Bagaimana untuk menangkap pengecualian memori dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!