یک برنامه 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 یا بررسی مقدار برگشتی استفاده کنید و همیشه مقادیر ورودی را قبل از استفاده اعتبارسنجی کنید.

توسط پژوهشگر در 202 روز قبل ساعت 02:37
دسته بندی ها: C Plus Plus C Plus Plus for beginner
arman در 202 روز قبل ساعت 09:05

نکته مفید: استفاده از std::make_unique<int[]>(n) یا std::unique_ptr<int[]> برای آرایه پویا، مدیریت حافظه را ساده می‌کند و از نشت حافظه جلوگیری می‌کند. در بلوک try-catch با std::bad_alloc مواجه شوید و پیغام مناسبی چاپ کنید. در محیط‌های با استثناها فعال، از این الگوها استفاده کنید؛ در سیستم‌های بدون استثنا از std::nothrow استفاده کنید و مقدار بازگشتی را بررسی کنید. همچنین ورودی‌ها را اعتبارسنجی کنید و سپس آرایه را با داده‌های کاربر پر کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری