تبليغاتX
برنامه نویسی با دلفی

برنامه نویسی با دلفی

آرایه ها در دلفی

آرایه ها در دلفی
 
دلفی به ما امکان می دهد آرایه‌هایی از هر نوع متغییری را ایجاد کنیم. برای تعریف آرایه به صورت زیر عمل میکنیم:

var
   array[indexType1, ..., indexTypen] of baseType;


در این تعریف برای نامگذاری آرایه، از قانون نامگذاری متغییرها استفاده میکنیم و مقدار اولیه را نیز درون یک جفت کروشه قرار می دهیم.

نکته: شما می توانید به جای استفاده از کروشه [] از ترکیب پرانتز نقطه استفاده کنید:

d(.i.):= 3 + i; // Equivalent d[i]:= 3 + i;


نکته: وقتی که شما یک آرایه را تعریف می کنید احتیاجی ندارید که به آن مقدار کمترین یا بیشترین بدهید:

var
   A : array [Boolean] of integer;
begin
   A[True] := 50;
   A[False] := 100;
end;


نکته: توابع Low و High کران‌های پایین وبالای یک متغییر آرایه‌ای یا نوعی یا ترتیبی را بر میگردانند:

for I := 0 to High(X) do S := S + X[I];


آرایه‌های ثابت:
آرایه های ثابت می توانند توسط ساختار ثابت نوع دلفی تعریف شود. نوع ثابت که همیشه با عبارت Const تعریف می شود، نه تنها مانع تغییر مقدار پارامتر می شود، بلکه کدهای بهینه بیشتری برای رشته‌ها و رکوردهای رد شده به توابع تولید می کند. ما هنگامی از این نوع استفاده می کنیم که نخواهیم مقدار رد شده به یک تابع تغییر کند.

type
   TDay = (Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);

const
   DayNames : array [TDay] of String[9] = ('Sunday', 'Monday', 'Tuesday',
                                           'Wednesday', 'Thursday', 
                                           'Friday', 'Saturday');
var
   Today : TDay;

begin
   Today := TDay(DayOfWeek(Date) - 1);
   ShowMessage('Today is ' + DayNames[Today] + '!');
end;



آرایه‌های دینامیکی:
آرایه‌های دینامیکی، آرایه‌های تحلیلی پویایی هستند که ابعاد آنها موقع کامپایل شدن شناخته شده نیست. برای اعلان آنها کافی است یک آرایه بدون بعد تعریف کنید:

var MyFlexibleArray: array of Real;


قبل از به کار گیری آرایه‌های دینامیکی، ابتدا باید از رویه SetLength برای تخصیص حافظه آرایه استفاده کرد:

SetLength (MyFlexibleArray, 2);


نکته: آرایه‌های دینامیکی همیشه مبتنی بر صفر می باشند.

نکته: شما می‌توانید آرایه‌های دینامیکی را قبل از رسیدن به ترک قلمرو از حافظه خارج کنید:

MyFlexibleArray := nil;


نکته: مقدار حافظه‌ای که در اختیار آرایه قرار میگیرد، به طول آرایه ونوع عناصر آن بستگی دارد. به عنوان مثال اگر آرایه‌ای از نوع صحیح به طول 10 داشته باشیم 4*10 بایت حافظه به آن اختصاص می‌یابد.


فشرده‌سازی آرایه‌ها:
در دلفی شما هنگامی که ساختار خود را تعیین کردید می‌توانید با استفاده از کلمه کلیدی packed اطلاعات ذخیره شده خود را متراکم کنید:

type TNumbers = packed array[1..100] of Real;


نکته: استفاده از packed سرعت دسترسی به اطلاعات را کند میکند. در مورد آرایه‌ای از کاراکترها این مورد سازگارتر می‌باشد.


آرایه‌های چند بعدی دینامیکی:
برای تعریف آرایه‌های چند بعدی دینامیکی، تنها کافی است ...array of را در ساختار خود تکرار کنید. به طور مثال:

type
   TMessageGrid = array of array of string;

var
   Msgs: TMessageGrid;


این تعریف یک آرایه دو بعدی از رشته‌ها می باشد. سپس باید به آرایه خود فضا نسبت داد:

SetLength(Msgs, I, J);



شما می‌توانید آرایه‌های چند بعدی دینامیکی خود را به صورت غیر مستطیلی (Not Rectangular) ایجاد کنید. ابتدا رویه SetLength را صدا زده و پارامتر بعد اول را بدهید:

var
   Ints: array of array of Integer;

SetLength(Ints, 10);


ما 10 سطر به آرایه خود اختصاص دادیم. از این پس، شما می توانید ستونهای خود را در هر زمان (با اندازه‌های مختلف) تخصیص دهید:

SetLength(Ints[2], 5);

نوشته شده توسط ابراهیم خدائی در چهارشنبه پانزدهم فروردین 1386 ساعت 2:43 | لینک ثابت |

منوی اصلی

صفحه نخست
آرشيو وبلاگ
پروفایل مدیر وبلاگ
عناوین مطالب وبلاگ
درباره دلفی
نكات مفيد براي كار در محيط دلفي
دلفی NET.
مقدمات دلفی
برنامه ها‎ ‏و مثالهای‎ دلفی
کامپوننتهای دلفی

درباره ی ما


این وبلاگ برای توسعه برنامه نویسی دلفی با ارائه ابزارها و مثالها و توضیحات کامل شروع به کار کرده که امیدواریم دوستان عزیز با ارائه نظرات و پیشنهادات خود ما را در این راه یاری نمایند تا بتوانیم قدم کوچکی در توسعه این زبان برنامه نویسی قدرتمند اما راحت داشته باشیم.

با تشکر: ابراهیم خدائی

پیوند های روزانه

آرشیو

پیوند های وبلاگ

دانشگاه نبی اکرم (ص)
سايت اختصاصي كامپيوتر ورودی 85
سازمان فناوری اطلاعات و ارتباطات
وزارت علوم و تحقیقات و فناوری
سازمان سنجش آموزش کشور
سایت دکتر مهدوی
قالب وبلاگ
جستجوگر قالب وبلاگ

آخرین پست ها

سری جدید کامپوننت برای دلفی 7
کدها ومثالها و ترفندهای دلفی
دانلود کامپوننت
5 کامپوننت برای دانلود
آموزش نصب انواع کامپوننتها در دلفی
کار با تلفن و مودم با استفاده از کامپوننت KDTele
راهنما
الگوريتم تبديل تاريخ ميلادي به تاريخ شمسي همراه با کد کامل آن به زبان دلفی
بخشی از ويژگيهای جديد Borland Developer Studio 2006
Graphics Device Interface
Borland Developer Studio 2006 (دلفی 2006)
بورلند استودیو در یک نگاه
فایل های INI در دلفی
ساختار رکوردها در دلفی
آرایه ها در دلفی
استفاده از DLL در دلفی
انواع متغیر ها در دلفی
مدیریت حافظه در دلفی
گزارش از دلفي 9- Delphi 2005
حركت از دلفي به دلفي NET.
تكنولوژي NET.
تاریخچه دلفی
نكات مفيد براي كار در محيط دلفي
سال خوک

RSS

POWERED BY
BLOGFA.COM

کلیه ی حقوق مادی و معنوی وبلاگ ebrahimkhodaei محفوظ می باشد.
طراحی شده توسط یاس تم