نمایش نتایج 1 تا 5 از 5

نام تاپیک: ویژگیهای ناامن C++‎

  1. #1
    کاربر دائمی آواتار mehdi58
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    Utopia
    پست
    450

    ویژگیهای ناامن C++‎

    سلام
    در جایی خوندم که C#‎ رو به صورت زیر تعریف کرده :

    “ C#‎ یک زبان جدید و مشابه با C++‎ است اما با این تفاوت که فاقد ویژگیهای ناامن C++‎ است”
    لطفا در مورد ویژگیهای ناامن C++‎ توضیح بدین.

  2. #2
    منظور از ویژگی های نا امن، قسمتهای مربوط به کست کردن متغییرها به هم است. توی C++‎ این مورد کنترل نمی شد و به همین دلیل اگر کست اشتباهی به وسیله ی برنامه نویس صورت می گرفت ممکن بود که برنامه کرش کنه یا هزار تا مشکل دیگه پیش بیاد. اما توی سی شارپ نوع داده ای متغییر ها قبل از هر کاری چک میشن تا صحت اون کار تایید بشه.
    در کل این مورد برمی گرده به همون Type Safety. اگر می خوای بیشتر بدونی، این مورد رو سرچ کن.

  3. #3
    البته زبان ++C بسیار قدرتمند است اما منظور از ناامن در اینجا همون کلمه Unsafe است که برای برنامه نویسهای Net. آشناست.
    در ++C وظیفه مدیریت حافظه و منابع سیستمی بردوش خود برنامه نویس بود و این امر هم با استفاده از اشاره گرها امکان پذیر بود اما در #C این وظیفه رو خود کامپایلر به عهده گرفته و بنابراین از اشتباهاتی که ممکن بود برنامه نویس انجام بده دیگر خبری نیست.
    به همین دلیل کدهای معمول در #C کدهای Safe هستند.البته میشه با استفاده از Unsafe Keyword از اشاره گر ها هم استفاده کرد.
    موفق باشید

  4. #4
    کاربر دائمی آواتار mamadgmail
    تاریخ عضویت
    دی 1384
    محل زندگی
    نصف جهان
    پست
    213
    در واقع همونطوری که گفتن بحث unsafe در ++C همون مسئله مدیریت حافظه بود. که به نظر من با وجود اینکه در برنامه نویس های مبتدی باهاش مشکل دارن ولی برای کسایی که مفاهیم حافظه و اشاره گرها رو خوب درک کردن به نظر من همین اشاره گر ها واسشون یک مزیت بزرگ محسوب می شه.

  5. #5
    کاملا درست میگید قدرت اشاره گرها رو فقط کسانی درک می کنند که درصورت عدم استفاده از اونها کارشون واقعا" گره می خورده.
    درهرصورت اشاره گرها از نظر من قدرتمندترین خصوصیت زبانهایی مثل ++C,C است.
    موفق باشید

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •