با استفاده از std::array و متد at، برنامهای بنویسید که یک آرایهٔ با اندازهٔ ثابت برای نگهداری امتیازات بازیکنان (در سناریوی بازی) یا شناسههای منابع (در سناریوی سیستم) تعریف کند و یک تابع برای دریافت و بروزرسانی ایمن عنصر بر اساس اندیس بنویسد که در صورت اندیس نامعتبر پیام خطا چاپ کند
4.0 بازدید آخرین ویرایش در 203 روز قبل ساعت 02:38 0.0
فایل هدر را وارد کنید و از std::array برای آرایهٔ با اندازهٔ ثابت استفاده کنید؛ بهجای عملگر[] از متد at() استفاده کنید که چک محدوده انجام میدهد و در صورت خطا استثنای std::out_of_range پرتاب میکند. برای مدیریت خطا میتوانید اندیس را قبل از دسترسی با مقایسه با arr.size() بررسی کنید یا دسترسی را درون بلوک try-catch قرار دهید. نکتهها: از size_t برای اندیسها استفاده کنید، تابع جداگانهای برای خواندن/نوشتن بنویسید و با کامپایلر g++ با استاندارد C++11 به بالا اجرا کنید؛ در بازیها این ساختار برای امتیازات بازیکن و در برنامههای سیستمی برای نگهداری شناسهٔ منابع مناسب است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای نگهداری امتیازات یا شناسهها از std::array با اندازه ثابت استفاده کنید و دسترسی ایمن را با at() پیادهسازی کنید. at() محدوده را بررسی میکند و در صورت نامعتبر بودن ایندکس، استثنای std::out_of_range پرتاب میشود؛ میتوانید با یک بلوک try-catch یا چک قبلی اندازه، خطا را مدیریت کنید. بهتر است دو تابع جداگانه برای خواندن و نوشتن بنویسید تا منطق هر عملیات روشن باشد و در صورت خطا پیام مناسب چاپ شود. از نوع size_t برای ایندکس استفاده کنید و کد را با g++ -std=c++11 یا بالاتر کامپایل کنید تا سازگاری و پایداری در بازیها و سیستمها حفظ شود.
گزارش