PDA

View Full Version : سوال: تعریف یک متغیر با نام موجود در یک string



sysman_20
سه شنبه 05 خرداد 1388, 15:53 عصر
من یک string دارم که طبق عملیات هایی یک نام تولید و در آن می ریزم حالا می خواهم یک متغیر با نام داخل اون تعریف کنم.
باید چی کار کنم؟

tdkhakpur
سه شنبه 05 خرداد 1388, 17:14 عصر
سلام:
دوست عزیز امکان نداره داخل همان برنامه این خواسته ات عملی بشه.
برای اینکار باید از دستورات خط فرمان کامپایلر برای کامپایل کردن و همچنین قرار دادن این نام برای متغیر و تعریف این کدها در یه فایل دیگر و کامپایل اونها با دستورات خط فرمان کارت میتونه تقریبا عملی بشود.
موفق باشید.

pesar irooni
سه شنبه 05 خرداد 1388, 23:34 عصر
مستقیم که نمیشه! ولی هر کاری که بخوای بکنی میتونی با generic کلاس Dictionary<> انجام بدی که یه جفت از key و value است. میتونی کلیدت رو نامی که خوندی قرار بدی و باهاش دقیقا مثل یه متغیر کار کنی.

prankster
سه شنبه 05 خرداد 1388, 23:46 عصر
در زبانهایی مثل #C یا Java امکان تعریف متغیر به صورت dynamic نیست، متغیر نیاز به تعریف نوع و Access Modifier و ظرف (کلاس در بر گیرنده) دارد که در زمان کامپایل مشخص می شود و در کد میانی قرار می گیرند. در عوض راه های بسیار متنوع برای توصیف یا تعریف متغیر با نام دلخواه در کلاس وجود دارد، مثلا می توانید از یک Dictionary برای تعریف متغیر هایی با نام دلخواه استفاده کنید، یا از Indexer استفاده کنید، یا کلاسی برای توصیف متغیر هایی با نام دلخواه بنویسید. ساده ترین راه استفاده از generic dictionary است.
مثلا:



string myVariable = "test";
Dictionary<string, object> myDictionary = new Dictionary<string,object>();

myDictionary.Add(myVariable, "some data");