تفاوت آرایه ها در زبان C# و C++
در حالت کلی اصول تعریف و استفاده از آرایه ها در زبان C++ و C# مشابه یکدیگر است ولی نحو این دو زبان در مورد آرایه ها کمی تفاوت دارد. در زیر به برخی از تفاوت های کلی این دو زبان در مورد نحو تعریف و به کار بردن آرایه ها را با یکدیگر مشاهده می کنیم.
زبان C# تنها دارای ارایه های CLR است ولی زبان C++ به غیر از پشتیبانی آرایه های CLR ، دارای آرایه های استاندارد و بومی اش (Native) نیز است. در زیر تعریف یک آرایه ی دو بعدی صحیح (int) با نام Sample با ابعاد a و b را برای هر زبان می بینید.
C++ (native) : int Sample [a ][ b];
C++ (CLR) : array < int , 2 > ^ Sample = gcnew array < int , 2 > (a , b);
C# : int [ , ] Sample = new int [a , b];
همکین طور که مشاهد می کنید تفاوت هایی در نحو تعریف آرایه ها وجود دارند برای مثال در زبان C# ابعاد آرایه همگی در یک کروشه قید می شوند ولی در زبان C++ بومی، اندیس هر بعد در یک کروشه قرار می گیرد؛ ولی اصول کلی به کار بردن آنها یکسان است. یکی دیگر از تفاوت های آرایه های CLR با ارایه های بومی این است که آرایه های CLR از مشخصه "طول" یا length برخوردار هستند، به این معنی که طول آرایه های CLR قابل استخراج است.
دسترسی به درایه های آرایه های تعریف شده در بالا :
C++ (native) : Sample [x][y] = 100;
C++ (CLR) : Sample [x , y] = 100;
C# : Sample [x , y] = 100;
+ نوشته شده در شنبه ششم خرداد ۱۳۹۱ ساعت 16:14 توسط MEC
GENERAL INFORMATION