برای استفاده از توابع کلاس Math باید چکار کرد که هر دفعه نیاز نباشد خود Math نیز تایپ شود؟
مثلا فرض کنید تابع Math.exp را میخواهیم اجرا کنیم. باید چکار کنیم که در برنامه فقط نوشتن exp کافی باشد و نیاز به نوشتن Math نباشد؟
برای استفاده از توابع کلاس Math باید چکار کرد که هر دفعه نیاز نباشد خود Math نیز تایپ شود؟
مثلا فرض کنید تابع Math.exp را میخواهیم اجرا کنیم. باید چکار کنیم که در برنامه فقط نوشتن exp کافی باشد و نیاز به نوشتن Math نباشد؟
C# برای راحتی تمامی عضو های کلاس Math را Static کزده و توابع استاتیک هم با نام کلاس صدا زده میشن
ممنونم.
میشه بیشتر توضیح بدید؟ استاتیک کرده یعنی چه و این کار چگونه باعث راحتی بیشتر شده است؟
یعنی شما می تونید بدون ایجاد آبجکتی از نوع Math به اعضای اون دسترسی داشته باشی.
به جای اینکه به صورت زیر بنویسی
Math obj = new Math();
obj.Pow(..);
اینطوری مینویسی
Math.Pow(..);
Close your eyes, take a deep breath, click your heels three times, and say, "There's no better thing than Inversion of Control and Dependency Injection, generic specialization, the decorator pattern, chains of responsibilities, and extensible software."
دوستان عزیز سوال HAIdle اصلا بحث در مورد Static و غیره نبود ایشون صرفا می خواستند نحوه خلاصه نویسی برای کدشون رو بدونند.
اگر Math یک فضای نام (NameSpace) می بود با اضافه کردن آن به لیست فضاهای نام بالای صفحه دیگر به نوشتن آن نیازی نبود ولی Math یک کلاس در فضای نام System است ونمی توان آنرا به آن لیست اضافه کرد و VS برای خلاصه نویسی Using System رو اضافه کرده تا دیگر نیازی به نوشتن System.Math نداشته باشید و صرفا Math را بنویسید.
البته شما می تونین معادلی(Alias) با کلمه Math قرار دهید به اینصورت :
using MyWord= System.Math;
که در اینحالت می توانید از MyWord به جای Math استفاده کنید
شاید روشی وجود داشته باشه ولی من همینقدر بلد بودم
آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
آن لحظه،
لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .
برنولی
سلام
من موندم چه نیازی به این کار هستش اگه صرفاً در حد یه کنجکاویه که جوابتون رو گرفتید ولی اگه حتماً باید یه همچین کاری رو انجام بدین.
یه تابع به exp تعریف کن و مقدار معادل آنرا در کلاس مورد نظر (Math) فراخوانی کن.
البته این روش پیشنهاد نمیشه.