تور لحظه آخری
امروز : دوشنبه ، 17 دی 1403    احادیث و روایات:  پیامبر اکرم (ص):ايمان مؤمن كامل نمى شود، مگر آن كه 103 صفت در او باشد:... باطل را از دوستش نمى ...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

اجاره سند در شیراز

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

خرید بلیط هواپیما

بلیط اتوبوس پایانه

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

خرید از چین

خرید از چین

تجهیزات کافی شاپ

خرید سرور اچ پی ماهان شبکه

کاشت ابرو طبیعی و‌ سریع

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

دوره آموزش باریستا

مهاجرت به آلمان

بورس کارتریج پرینتر در تهران

تشریفات روناک

نوار اخطار زرد رنگ

ثبت شرکت فوری

خودارزیابی چیست

فروشگاه مخازن پلی اتیلن

قیمت و خرید تخت برقی پزشکی

کلینیک زخم تهران

خرید بیت کوین

خرید شب یلدا

پرچم تشریفات با کیفیت بالا و قیمت ارزان

کاشت ابرو طبیعی

پرواز از نگاه دکتر ماکان آریا پارسا

پارتیشن شیشه ای اداری

اقامت یونان

خرید غذای گربه

رزرو هتل خارجی

تولید کننده تخت زیبایی

مشاوره تخصصی تولید محتوا

سی پی کالاف

دوره باریستا فنی حرفه ای

چاکرا

استند تسلیت

تور بالی نوروز 1404

سوالات لو رفته آیین نامه اصلی

کلینیک دندانپزشکی سعادت آباد

پی ال سی زیمنس

دکتر علی پرند فوق تخصص جراحی پلاستیک

تجهیزات و دستگاه های کلینیک زیبایی

تعمیر سرووموتور

 






آمار وبسایت

 تعداد کل بازدیدها : 1851358972




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

ارسال متغیر به تابع با مرجع یا Reference در اکشن 3 -


واضح آرشیو وب فارسی:سایت ریسک: ارسال متغیر به تابع با مرجع یا Reference در اکشن 3 ++Hadi++ 25 اسفند 1389, 10:44سلام ما در C++ می تونستیم یه متغیر رو به دو صورت به یه تابع بفرستیم : 1- با مقدار 2- با مرجع یا رفرنس در حالت اول وقتی متغیر داخل تابع می رفت و اونو به روش زیر تغییر می دادیم ، هیچ تغییری در اصل متغیر ایجاد نمی شد : int a=1; ChangeFun(a); cout<<a<<endl;//OutPut:1 void ChangeFun(int NewNumber) { NewNumber=10; } ولی وقتی همونو با این روش می فرستادیم ، در واقع اونو با مرجع و اصلش وارد تابع می شد و می تونستیم اونو کلا عوض کنیم : int a=1; ChangeFun(a); cout<<a<<endl;//OutPut:10 void ChangeFun( int$ NewNumber) { NewNumber=10; } در واقع در روش دوم ، آدرس اشاره گر یا در واقع خونه حافظه این متغیر در ورودی تابع کچی می شد و می تونستیم ، اونو از بیس عوض کنیم . البته یه استثنائی در مورد آرایه ها بود و این بود که اگه آرایه رو به روش اول ارسال می کردین ، می تونستین به صورت مستقیم مقادیر خونه های اونو عوض کنین و در واقع واسه تغییر مقدار خونه های آرایه نیازی به ارسال مرجع آرایه نیست .چرا؟ چون آرایه خودش یه اشاره گره . حالا همین روش در اکشن به سبک های متنوع امکانپذیره . من امروز دنبال این روش در اکشن 3 بودم و اونو پیدا کردم و گفتم براتون بنویسم . اول این دستور رو در فلش و اکشن 3 اجرا کنید : var i:int=1; ChangeFun(i); trace(i);//output:1 function ChangeFun(num:int):void { num=10; } خوب دیدین که متغیر عوض نشد چون اونو با مقدار فرستادیم .برای اینکه بتونیم یه متغیر رو با مرجع به تابع اکشن 3 بفرستیم تا اونو عوض کنین باید از آرایه یا از Object استفاده کنیم . به اینجا توجه کنید : var i:Array=[1,2,3,4,5]; ChangeFun(i); trace(i);//output:100,2,3,4,5 function ChangeFun(num:Array):void { num[0]=100; } می بینین که ر اینجا ، آرایه رو تونستیم مستقیما عوض کنیم . و حالا کار نهایی که خواستم بهتون آموزش بدم : var objVar:Object = {x:10, y:15}; objVar.z=20; trace("First Time : ",objVar.x, objVar.y,objVar.z); // 10 15 passByRef(objVar); // 11 16 trace("Final Trace: ",objVar.x, objVar.y,objVar.z); // 11 16 function passByRef(objParam:Object):void { objParam.x++; objParam.y++; objParam.z++; trace("In Function: ",objParam.x, objParam.y,objParam.z); } یعنی کافیه متغیراتونو رو یه Object تعریف و داخل تابع ببرین تا بتونین اونو به صورت مرجع عوض کنین ... موفق باشید ... armanbm 26 اسفند 1389, 00:50ممنون هادی جان. در تکمیل پست شما بگم. من به صورت تجری متوجه شدم تمام ساختمان داده ها و .. در اکشن اسکریپت به صورت اشاره گری به حافظه ی مربوطه هستند بجز ساختمان داده های اولیه مثل int , long, nomber , string,.... که مقدار خودشونه. البته من تو dictunary وhash table حضور ذهن ندارم اما بنظرم اونا هم به صورت اشاره گرن. اشاره گر به خونه ی حافه ای که اطلاعات مربوزه ذخیره شده. واین میتونه داده ی زائد تو حافظه ایجاد کنه... سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 1137]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن