++C چیست؟
زبان برنامه نویسی C++ در سال 1985 توسط Bjarne Stroustup در آزمایشگاه AT&T بعنوان توسعه ای بر زبان C بوجود آمد. افزونه هایی که بر این زبان اضافه شده بودند، از زبان Simula گرفته شده بودند. از آن زمان تا کنون، C++، با سرعت زیادی در راستای نیازهای عملی برای یک زبان برنامه نویسی رو به رشد است، نیازهایی که یک زبان برنامه نویسی را قادر می سازد تا بطور موثری انواع مختلفی از داده ها را در کنار یکدیگر مدیریت نماید. محور اصلی در پیاده سازی این زبان برنامه نویسی، مفهوم برنامه نویسی شی گرا است (OOP). امروزه، C++ بازار تجاری را در اختیار خود گرفته است بطوریکه این زبان برنامه نویسی، هم برای برنامه نویسان سیستم های عامل و هم برای برنامه نویسان نرم افزارهای کاربردی، مورد پسند می باشد.
سي پلاس پلاس – C++ – C Plus Plus
زبان سي پلاس پلاس يک زبان سطح مياني ( داراي قابليت هاي زبانهاي سطح بالا و پايين ) است که براي طراحي و توليد هر چه بهتر برنامه هاي کاربردي، روش هاي ساخت يافته و منظمي را تدارک ديده است و در عين حال، برخورداري و پشتيباني از قابليت هاي شي گرايي از برجسته ترين ويژگي هاي زبان C++ و نقطه اصلي تمايز آن با زبان C است.
محيط هاي برنامه نويسي با سي پلاس پلاس معمولا از محيط طراحي و توليد برنامه ، زبان و کتابخانه هاي استاندارد C++ تشکيل شده است. برنامه نويسان ميتوانند کلاس هاي و اشياء خاص خودشان را نوشته و از آنها استفاده کنند و يا از مجموعه کتابخانه هاي سي پلاس پلاس در توسعه برنامه ها و نرم افزارهای خود بهره گیرند.
يکي از ويژگي هاي مهم برنامه نويسي با زبانهاي شي گرا نظير سي پلاس پلاس ، استفاده مجدد از کلاس ها و اشياء ساخته شده قبلي است. چرا که آنها مراحل آزمايش ، بهينه سازي و اشکال زدائي را پشت سر گذاشته اند و باعث افزايش دقت برنامه و برنامه نويس ميشوند و به همين دليل است که روش دوم و استفاده از کتابخانه بر روش اول ترجيح داده ميشود!.
برنامه نویسی شی گرا
برای آنکه مزیتهای یک زبان برنامه نویسی شی گرا را با یک زبان برنامه نویسی ساختاری نظیر MATLAB، FORTRAN 77، یا C نشان دهیم، فرض می کنیم که یک رقیب ورزشی بین المللی، به جمع دوندگانی از سراسر دنیا ملحق شده است. رکورد هر یک از دوندگان، تشکیل شده است از چندین فیلد شامل نام، کشور، شهر زادگاه، زمان تولد، و بهترین رکورد زمانی.
در یک زبان ساختاری، هر یک از این فیلدها در یک بردار داده ای جداگانه ذخیره خواهند شد. ولی در یک زبان برنامه شی گرا، هر دونده، تبدیل به شی ای خواهد شد که به عنوان عضوی از کلاس دونده ها تعریف می شود و هر عضو با مجموعه ای از این فیلدها توصیف خواهد شد. این روش به ما این امکان را می دهد تا ذخیره سازی، فراخوانی و ویرایش را به هر روش دلخواهی بر روی داده های شخصی هر دونده با استفاده از اپراتورهای سمبولیک ساده انجام دهیم. کلاسهای زیر مجموعه، تشکیل می شوند از بعنوان مثال دوندگانی از یک کشور خاص که به نحوی تعریف می شوند که می توانند به سادگی جزییات بیشتری را از دوندگان ارائه دهد.
یک زبان شی گرای OPP به ما این امکان را می دهد تا انواع داده های مورد نیاز خود را بصورت یک شی در یک کلاس تعریف کنیم و سپس از آن کلاس به عنوان سنگ بنای توسعه بیشتر استفاده نماییم. این انعطاف پذیری اساسا به ما این امکان را می دهد تا زبانی را بسازیم بدون آنکه کامپایلر آن را نوشته باشیم. با این دید، یک زبان شی گرا یا OPP زبان فوق العاده پیشرفته ای می باشد.
کتابخانه هاي استاندارد C++
برنامه هاي سي پلاس پلاس از قطعه کدهايي به نام کلاس و توابع تشکيل ميشوند. کتابخانه هاي C++ مجموعه غني از کلاس ها و توابع را گردآوري کرده که به برنامه نويسان اجازه ميدهد در برنامه هاي خود از آنها استفاده کنند. استفاده از کتابخانه هاي C++ باعث افزايش سرعت ، دقت و کارآيي برنامه ها ميشوند و به همين دليل است که يادگيري زبان C++ يک بحث است و آشنايي با کتابخانه هاي آن بحثي ديگر.
فايل برنامه هاي نوشته شده با سي پلاس پلاس معمولا با پسوندهاي cpp يا cxx ذخيره ميشوند.