سوالات برنامه‌ نویس سی پلاس پلاس 1405 pdf

۶۵,۹۰۰ تومان

⭐️ با خرید و مطالعه این بسته فوق العاده قبولی خود را در آزمون افزایش دهید.

⭐️ لینک دانلود فایل خریداری شده بلافاصله بعد از پرداخت نمایش داده می شود.

⭐️ اگر ایمیل ندارید کادر ایمیل را خالی بگذارید.

 

دانلود رایگان نمونه ای از سوالات
شناسه محصول: barrrc دسته: برند:

توضیحات

دانلود مجموعه سوالات برنامه‌ نویس سی پلاس پلاس ++C با جواب تستی و تشریحی با فرمت pdf (فنی حرفه ای)

چند مورد از سوالات برنامه‌ نویس سی پلاس پلاس:

1-خروجی کد زیر چیست؟

int x = 5;
int& ref = x;
int* ptr = &ref;
(*ptr)++;
std::cout << x << ” ” << ref;

الف) 5 5
ب) 6 5
ج) 5 6
د) 6 6  ☑️

توضیح: ref یک reference به x است و ptr آدرس همان متغیر را نگه می دارد با افزایش (*ptr)++ مقدار x به 6 تغییر میکند و هم x و هم ref مقدار 6 را نشان می دهند

 

2-کدام گزینه درباره std::move صحیح است؟

الف) حافظه را فیزیکی جابجا میکند
ب) یک rvalue reference ایجاد میکند  ☑️
ج) همیشه کپی را جلوگیری میکند
د) فقط با smart pointer کار میکند

توضیح: std::move فقط یک cast به rvalue reference است و خود عملیات انتقال را انجام نمیدهد بلکه امکان استفاده از move semantics را فراهم میکند

 

3-خروجی کد زیر چیست؟

class Base {
public:
virtual void show() { std::cout << “Base “; }
};
class Derived : public Base {
public:
void show() override { std::cout << “Derived “; } }; Base* ptr = new Derived(); ptr->show();
delete ptr;

الف) Base
ب) Derived  ☑️
ج) خطای کامپایل
د) رفتار تعریف نشده

توضیح: به دلیل استفاده از virtual، تابع show به صورت پلی مورفیک فراخوانی میشود و نسخه Derived اجرا می گردد

 

4-کدام گزینه درباره constexpr صحیح نیست؟

الف) می تواند در compile-time محاسبه شود
ب) همیشه باید در compile-time محاسبه شود  ☑️
ج) می تواند با توابع استفاده شود
د) از C++11 معرفی شده است

توضیح: constexpr می تواند در compile-time یا runtime محاسبه شود بسته به context استفاده

 

5-خروجی کد زیر چیست؟

std::vector v = {1, 2, 3};
auto it = v.begin();
v.push_back(4);
std::cout << *it;

الف) 1
ب) 4
ج) خطای کامپایل
د) رفتار تعریف نشده (UB)  ☑️

توضیح: push_back ممکن است باعث reallocation شود و iterator قبلی را invalidate کند که منجر به UB میشه

 

6-خروجی کد زیر چیست؟

int arr[] = {1, 2, 3, 4, 5};
int* p = arr + 2;
std::cout << p[-1] << ” ” << p[1];

الف) 3 1
ب) 4 2  ☑️
ج) 5 3
د) خطای کامپایل

توضیح: p به arr[2] اشاره دارد p[-1] معادل arr[1] (یعنی 2) و p[1] معادل arr[3] (یعنی 4) است

 

7-کدام گزینه درباره std::unique_ptr صحیح است؟

الف) قابل کپی است
ب) می تواند ownership را share کند
ج) فقط قابل move است  ☑️
د) reference counting دارد

توضیح: std::unique_ptr exclusive ownership دارد قابل کپی نیست و فقط با move می توان ownership را منتقل کرد

 

8-خروجی کد زیر چیست؟

class A {
public:
A() { std::cout << “A “; }
~A() { std::cout << “~A “; }
};
int main() {
A* p = new A[2];
delete p;
}

الف) A A ~A ~A
ب) A A ~A
ج) A ~A A ~A
د) رفتار تعریف نشده  ☑️

توضیح: برای آرایه ای که با new[] ساخته شده باید از delete[] استفاده شود استفاده از delete به جای delete[] منجر به UB میشود

 

9-کدام گزینه درباره lambda capture در C++ صحیح نیست؟

الف) [=] همه متغیرها را by value می گیرد
ب) [&] همه متغیرها را by reference می گیرد
ج) [this] اعضای کلاس را capture میکند
د) [=, &x] همه را by reference و فقط x را by value می گیرد  ☑️
توضیح: [=, &x] به معنای capture همه by value و فقط x by reference است نه برعکس

دیدگاهها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین نفری باشید که دیدگاهی را ارسال می کنید برای “سوالات برنامه‌ نویس سی پلاس پلاس 1405 pdf”

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *