یک برنامه C++ بنویسید که با استفاده از هدر <memory> و std::unique_ptr یک آرایه پویا از n عدد صحیح ایجاد کند، با گرفتن ورودی از کاربر مقادیر را پر کرده، جمع آنها را محاسبه و در صورت بروز std::bad_alloc پیغام خطای مناسب چاپ کند.
4.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:37 0.0
برای حل، از هدرهای <iostream> و <memory> استفاده کنید؛ میتوانید std::make_unique(n) یا std::unique_ptr را درون بلوک try ایجاد کنید و در catch(const std::bad_alloc&) پیغام خطا چاپ کنید. نکته: در سیستمهای تعبیهشده که استثناها غیرفعالاند میتوانید از new با std::nothrow یا بررسی مقدار برگشتی استفاده کنید و همیشه مقادیر ورودی را قبل از استفاده اعتبارسنجی کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکته مفید: استفاده از std::make_unique<int[]>(n) یا std::unique_ptr<int[]> برای آرایه پویا، مدیریت حافظه را ساده میکند و از نشت حافظه جلوگیری میکند. در بلوک try-catch با std::bad_alloc مواجه شوید و پیغام مناسبی چاپ کنید. در محیطهای با استثناها فعال، از این الگوها استفاده کنید؛ در سیستمهای بدون استثنا از std::nothrow استفاده کنید و مقدار بازگشتی را بررسی کنید. همچنین ورودیها را اعتبارسنجی کنید و سپس آرایه را با دادههای کاربر پر کنید.
گزارش