تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 11

نام تاپيک: add variable در c++.net

  1. #1
    اگه نباشه جاش خالی می مونه sara_she's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    اهواز
    پست ها
    214

    14 add variable در c++.net

    با سلام

    من يه win32dll در c++.net2003دارم كه با addclass از نوع net. چندتا فرم بهش اضافه كردم مي خوام مقداري رو كه تو textbox فرمم مي نويسم (موقع اجرا) تو dll مورد استفاده قرار بدم براي انتقال داده بين فرم و cpp از classviewروي فرم مورد نظر راست كليك و add variableرو انتخاب كردم .ولي تو قسمت type نوع رشته وجود نداره كه من بتونم تو اين متغير محتواي textbox رو بريزم و منتقل كنم فقط sctring داره كه اونم درست كار نمي كنه يا من نمي دونم چه طور باهاش كار كنم

    براي انتقال داده از نوع int مشكلي ندارم و تست كردم در فايل cpp به راحتي با مقداري كه براي اين متغير تو فرم در نظر گرفته شده مي تونم كار كنم مثلا تو if ازش استفاده كنم ولي براي انتقال رشته نمي دونم چيكار كنم

    ممنون مي شم اگه راهنماييم كنيد

  2. #2
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    سلام.کافیه شما در Type داده ، String رو بنویسین.به طور کلی هر نوعی که بخواین (مثلا اسم کلاستون) رو در combo مورد نظر بنویسین.دقت کنین که بنویسین String نه string

  3. #3
    اگه نباشه جاش خالی می مونه sara_she's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    اهواز
    پست ها
    214

    پيش فرض

    فكر ميكردم با نوع int مشكلي ندارم ولي در واقع در اون حالت هم كار نمي كنه و من چون شرط if رو با = به جاي == استفاده كرده بودم كه يك گزاره هميشه درست بود اين اشتباه پيش اومده

    ولي هنوز نمي تونم بين فرم dll‌ با variable‌ها ارتباط داشته باشم . كاري كه من مي خوام انجام بدم اينه كه همون متغير كلاسي كه از نوع class formساختم و روي buttonهاش كليك كردمو يك سري تغييرات زمان اجراش براي اون اتفاق افتاده به dll منتقل كنم و با كامپوننت هاش تو dll‌ كار كنم اين فرم از جاي ديگري و توسط فرم ديگري فراخواني مشه نه از درون dll .

    مثلآ مقداري رو كه كاربر زمان اجراي فرم تو textboxريخته درون dll تو جدول insert كنم . در حالي كه اگه از اين نوع كلاس يه new تو dll بسازم چون اين متغير كلاس جديد همون متغير كلاسي كه قبلا از جاي ديگه اي فراخواني و اجرا شده نيست بلكه يه متغير كلاس جديد است كه اجرا نشده مقدار textboxخالي هست و اصلا روي buttonِ ي كليك نشده كه تغييري اعمال بشه

    سلسله مراتب كار به صورت زير است
    1- درون dllيه كلاس فرم جديد ايجاد مي كنيم و اونو show مي كنيم
    2- با كليك روي دكمه اي در اين فرم فرم مورد نظر باز مي شه
    3- مقداري در textbox ريخته و روي دكمه ايك ليك مي شه
    4- مقدار textboxبه dllمنتقل مي شه و در دستور insert قرار مي گيره

    اميدوارم منظورم رو متوجه شده باشيد

  4. #4
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    دوباره سلام.یه نمونه تو آدرس زیر گذاشتم : [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    اگه مشکلی داشت خبر بدین.

  5. #5
    اگه نباشه جاش خالی می مونه sara_she's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    اهواز
    پست ها
    214

    پيش فرض

    exactly زدين به هدف

    مشكلمو حل كردين sampleخوبي بود

    ولي يه سوال فرق اينكه ما يه متغير رو با addvariableتعريف كنيم كه تو روالها و توابع يه كلاس قابل استفاده باشه با اينكه خودمون با كد نويسي يه متغير رو تو قسمت costructor بگذاريم چيه؟

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  6. #6
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    دوباره سلام و خواهش میکنم کاری نبود.

    از Add Variable برای اضافه کردن یه متغییر (Field) به صورت public ، private و یا protected به یک
    Class یا Struct یا Union استفاده میشه ، نه یه متود.
    نمونه ای که شما نوشتین یه Field هست که محدوده ی دید اون (Oscope) تنها در Constructor هست
    و تو متود های دیگه نمیتونین ازش استفاده کنین. اگه بخوایم خیلی ساده در نظر بگیریم محدوده ی تعریف
    یه Field از " } " شروع میشه و با " { " به پایان میرسه.
    مثلا :


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    الان در مثال بالا Field در تمامی متود های این کلاس قابل استفاده هست.

    استفاده از Add Variable اختیاری هست. میتونین به صورت دستی این کار رو انجام بدین. اما کلا اشتباه

    در استفاده از Add Variable خیلی کم میشه.








  7. #7
    اگه نباشه جاش خالی می مونه sara_she's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    اهواز
    پست ها
    214

    پيش فرض

    منظورتون اينه كه اگه مثل كدي كه تو پست قبل گذاشتم عمل كنم تو روال هايي مثل كليك button‌ و يا توابعي كه با Add function اضافه مي كنم متغير مور نظر شناخته شده نيست؟

    در مورد add function‌ هم همين قضيه برقرار است ؟منظورم تفاوت تعريف يك function‌ با add variable‌و يا با كد نويسي است

  8. #8
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    درسته!وقتی متغییری رو در oscope یه تابع تعریف میکنین ، تو توابع دیگه نمیتونین ازش استفاده کنین.در مورد تابع این طور نیست. توابعی که با Add Function اضافه میکنین در کلاس مورد نظر ایجاد میشه که بازهمدسترسی اون میتونه به صورت public یا private ویا protected باشه.

  9. #9
    اگه نباشه جاش خالی می مونه sara_she's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    اهواز
    پست ها
    214

    پيش فرض

    مگه زماني كه من يه متغير رو تو constructor كلاسم تعريف كنم جزئي از كلاس محسوب نمي شه ؟ پس فكر مي كنم بايد تو روالها ي كلاس بشه ازش استفاده كرد يا وقتي نمونه اي از كلاس رو خارج از اين كلاس مي سازيم .درست نيست؟ منظورتون از scopeيه تابع همين كد زير است ؟ منظورتون از تابع در اين كد چيست؟
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    منظورم از add functionهم اين بود كه كار با يك تابع از نظر دسترسي در روال هاي همين كلاس يا خارج از آن ، براي توابعي كه خودمان مي نويسم با توابعي كه توسطadd function به پروژه اضافه مي كنيم چه تفاوتهايي دارد

  10. #10
    حـــــرفـه ای
    تاريخ عضويت
    Aug 2006
    پست ها
    793

    پيش فرض

    مگه زماني كه من يه متغير رو تو constructor كلاسم تعريف كنم جزئي از كلاس محسوب نمي شه ؟
    چرا جزئی از کلاس هست اما محدوده ی عملش (oscope) تنها در constructor هست نه بیشتر.
    گفتم به طور ساده میتونین oscope رو بین { } در نظر بگیرین. وقتی constructor با { بست میشه
    دیگه Field شما قابل دسترس نیست. مگه این در خود کلاس تعریف بشه. نه در یه متود.


    منظورتون از تابع
    تو هر زبانی یا مجوعه ای یه سری دستور العمل ، به یه اسم خاص تعریف میشه.
    مثلا در C یا Cpp میگیم " تابع " و در Net. گفته میشه " متود " و یا در VB که فکر کنم " روال " گفته میشه.
    اما در Net. باید این تعریف رعایت بشه.
    تو کدی که گذاشتین دو تا تابع (متود یا روال) وجود داره که یکی constructor هست و دیگری
    InitializeComponent هست.


    هیچ فرقی نمیکنه. شما میتونین یه تابع رو دستی و یا با Add Function به کلاس مورد نظر اضافه کنین.
    وقتی یه تابع در یه کلاس تعریف میشه ، باقی توابع یا متودهای اون کلاس بهش دسترسی دارن.

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •