برنامه نویسی

مقدمه ای جامع بر C++: به مبانی، نحو و مفاهیم کلیدی تسلط داشته باشید

C++ یکی از قدرتمندترین و همه کاره ترین زبان هاست. این به طور گسترده در زمینه هایی مانند توسعه بازی، برنامه نویسی سیستم، هوش مصنوعی، سیستم های تعبیه شده و موارد دیگر استفاده می شود. این راهنما شما را با عناصر ضروری C++ از نحو اولیه و ساختارهای کنترلی گرفته تا مفاهیم پیشرفته مانند برنامه نویسی شی گرا (OOP) و مدیریت حافظه آشنا می کند.
چرا C++ یاد بگیریم؟
C++ کارایی برنامه نویسی سطح پایین را با انعطاف پذیری برنامه نویسی سطح بالاتر ترکیب می کند. این به توسعه دهندگان اجازه می دهد تا کدهای بسیار بهینه شده را با کنترل دقیق بر منابع سخت افزاری بنویسند. در حالی که منحنی یادگیری تندتری دارد، تسلط بر C++ به شما بینش عمیقی در مورد نحوه عملکرد رایانه ها در سطح پایین می دهد.
1. نحو و ساختار اساسی
برنامه های C++ حول توابع ساخته شده اند و تابع main() نقطه ورود است. در اینجا ساده ترین برنامه C ++ – Hello World:
#شامل
با استفاده از namespace std.
int main(){
cout<<"سلام جهان!!:<
بازگشت 0;
}
مفاهیم کلیدی:

  1. #include: شامل کتابخانه جریان ورودی-خروجی برای چاپ در کنسول است.
  2. استفاده از namespace std. این کتابخانه استاندارد C++ را بدون پیشوند همه چیز با std::
  3. cout: شیء مورد استفاده برای چاپ خروجی در کنسول.
  4. main(): نقطه ورود برنامه C++.
    انواع داده ها و متغیرها:
    C++ یک زبان تایپ ایستا است به این معنی که باید نوع داده هر متغیر را مشخص کنید. انواع داده های رایج:
  5. int: عدد صحیح (به عنوان مثال: int x = 5;)
  6. float, double: اعداد ممیز شناور (به عنوان مثال: double pi=3.14159)
  7. char: تک کاراکتر (به عنوان مثال: char letter=”A”;)
  8. رشته: دنباله ای از کاراکترها (به عنوان مثال: “Alice”؛)
  9. bool: مقدار بولی (درست یا نادرست)

مثال
بین سن = 25;
ارتفاع شناور = 5.9;
char grade=”A”;
bool فعال است = درست است.

ساختارهای کنترلی
ساختارهای کنترلی در C++ به شما این امکان را می دهند که جریان برنامه خود را کنترل کنید. رایج ترین آنها شرطی ها (if, else) و حلقه ها (for, while) هستند.
مثال: گزاره های شرطی:

int x = 10;
اگر (x > 5) {
cout << "x بزرگتر از 5 است" << endl;
}دیگر {
cout << "x کمتر یا مساوی 5 است" << endl;
}
مثال: حلقه ها:
for(int i = 0; i < 5; i++) {
cout << "تکرار" << i << endl;
}
توابع
توابع در C++ به شما این امکان را می دهند که کد خود را به قطعات کوچکتر و قابل استفاده مجدد تقسیم کنید. یک تابع معمولا دارای یک نوع بازگشتی، یک نام، پارامترها و یک بدنه است.
نمونه ای از توابع:
int add(int a, int b) {
برگرداندن a + b;
}

int main() {
int result = add(3, 4);
cout << "Sum: " << نتیجه << endl;
بازگشت 0;
}

آرایه ها و رشته ها
آرایه ها برای ذخیره چندین مقدار از یک نوع استفاده می شوند. C++ همچنین از رشته ها (توالی از کاراکترها) پشتیبانی می کند.
نمونه ای از آرایه:
int arr[5] = {1، 2، 3، 4، 5}؛
cout << "اول عنصر: " << arr[0] << endl; // خروجی: 1
نمونه رشته:

نام رشته = “علی”;
cout << "نام: " << نام << endl;
** اشاره گرها و مدیریت حافظه**
++C به شما از طریق اشاره گرها روی حافظه مستقیم می دهد. اشاره گرها متغیرهایی هستند که آدرس های حافظه سایر متغیرها را ذخیره می کنند.
نمونه ای از اشاره گرها:
عدد int = 10;
int* ptr = #

cout << "مقدار: " << ptr << endl;

تخصیص حافظه پویا:
در C++ حافظه را می توان به صورت پویا با استفاده از “جدید” و “حذف” تخصیص داد.
int ptr = int جدید;

ptr = 20;
cout << "مقدار: " << *ptr << endl;

حذف ptr;

**برنامه نویسی شی گرا (OOP) در C++ *
++C یک زبان شی گرا است و از مفاهیمی مانند کلاس ها، وراثت، چندشکلی و
کپسوله کردن
مثال کلاس و شی:

با استفاده از namespace std.

ماشین کلاس {
عمومی:
مدل رشته;
سال بین المللی;

void displayInfo() {
    cout << "Model: " << model << ", Year: " << year << endl;
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

};

int main() {
Car myCar;
myCar.model = “تسلا مدل 3”;
myCar.year = 2021;
myCar.displayInfo();
بازگشت 0;
}
مفهوم کلیدی OOP:
کلاس ها: طرح اولیه برای ایجاد اشیا.
اشیاء: نمونه هایی از کلاس هایی که داده ها و متدها را نگه می دارند.
کپسوله سازی: پنهان کردن جزئیات داخلی و تنها افشای قابلیت های لازم.
ارث
وراثت به یک کلاس اجازه می دهد تا ویژگی ها و متدها را از کلاس دیگر به ارث ببرد.
نمونه ارث:
وسیله نقلیه کلاس {
عمومی:
نام تجاری رشته;
سرعت بین المللی؛

void displayInfo() {
    cout << "Brand: " << brand << ", Speed: " << speed << endl;
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

};

کلاس خودرو: وسیله نقلیه عمومی {
عمومی:
درب های داخلی؛

void displayCarInfo() {
    displayInfo();
    cout << "Doors: " << doors << endl;
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

};

int main() {
Car myCar;
myCar.brand = “Toyota”;
myCar.speed = 180;
myCar.doors = 4;
myCar.displayCarInfo();
بازگشت 0;
}
قالب ها:
الگوها به شما امکان می دهند توابع یا کلاس های عمومی بنویسید که می توانند با هر نوع داده ای کار کنند.
مثال: تابع الگو

قالب
T افزودن (T a, T b) {
برگرداندن a + b;
}

int main() {
cout << add(3, 4) << endl;

cout << add(3.5, 4.5) << endl;

بازگشت 0;
}

رسیدگی به استثنا:
C++ مدیریت استثنا را با استفاده از “try”، “catch” و “throw” برای مقابله با خطاها در زمان اجرا فراهم می کند.
نمونه ای از رسیدگی به استثنا:

سعی کن {
int x = 10، y = 0;
اگر (y == 0) {
پرتاب “تقسیم بر صفر خطا”؛
}
cout << x / y << endl;
} catch (const char* msg) {
cout << msg << endl; // خروجی: تقسیم بر صفر خطا
}

نوشته های مشابه

دیدگاهتان را بنویسید

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

دکمه بازگشت به بالا