Tôi hiện đang sử dụng Array.Copy chuyển một mảng như vậy:Là Array.Copy an toàn khi nguồn và đích là cùng một mảng?
Array.Copy(array, 0, array, 1, array.Length - 1);
Đó là đáng chú ý nhanh hơn so với sử dụng một vòng lặp. Tôi biết rằng các chức năng tương tự trong các ngôn ngữ khác (ví dụ như memcpy) là không xác định hoặc đôi khi phá vỡ khi trình biên dịch quá hung hăng. Có hợp lý để xem xét điều này an toàn trong .NET?
Điều này là do chức năng cơ sở được sử dụng là memmove và cho phép chồng chéo bộ nhớ. – Rahly