ايران ويج

نسخه‌ی کامل: public variable
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
یکی به داد من برسه !033
تو vc++.net چطوری میشه یه متغیر سراسری تعریف کرد ؟! یه متغیر می خوام که توی همه فرم ها در دسترس باشه.

من یه from1 دارم به عنوان فرم اصلی و سه چهار تا فرم دیگه که اون فرم ها از تو فرم اصلی باز میشه. یعنی فایل فرم های دیگه تو فرم اصلی incude شده (برای نمایش). حالا یه متغیر رو تو form1 پابلیک تعریف می کنم. برای استفاده از این متغیر باید form1 تو فرم های دیگه include بشه. ولی خوب نمیشه دیگه ! چون اون فرم ها خودشون تو فرم1 include شدن.

توی فایل هدر هم که نمیشه متغیر تعریف کرد ! (چرا؟!؟)
بالاخره اینم پیدا کردم ! یکم عجیب غریبه! ولی حتما باید همینطوری باشه ! هرچقدر دستکاریش کردم غیر این نمیشه !

اول باید یه فایل هدر (مثلا global.h) درست کرد و
کد:
//global.h
extern int var;

بعد باید یه فایل cpp (مثلا global.cpp) درست کرد و
کد:
#include "stdafx.h"
#include "global.h"
int var;
جالبه که اون stdafx.h هم حتما باید تو این فایل cpp باشه. درحالی که هیچی تو فایل stdafx نیست !! فقط یه خط کد pragma once که اگه اونو تنها بیارین تو فایل cpp جواب نمیده ! کامپایلر فایل stdafx رو به عنوان precompiled header میشناسه !

تازه از اون جالبتر اینه که حالا تو فرم باید فایل هدر (global.h) رو include کنین ! Amaze
برای استفاده از متغیر :
کد:
#include "global.h"
var = 2;

از عجایب زیون C++ دیگه !!

دوستان نظرتون چیه یه آموزش vc++.net راه بندازیم ؟ من تجربیات این چند روزم رو میگم! هر کی راه افتاد به بقیه هم کمک کنه. این قسمت سایت هم یه تکونی میخوره.
آره. یه کار بکن راه بیفتیم. شاید باقیشو یه کاریش کردیم. من که یه بار VS رو برای C++ باز کردم وحشت کردم.
نه اونقدا هم سخت نیست ! منم فکر میکردم چقدر باید عجیب غریب باشه! دات نت کارها رو راحت کرده. IDE هم خیلی کمک میکنه. بیشتر کدها رو خودش تولید.
من شروع می کنم تا ببینیم به کجا میرسیم . . .