سلام! اینم یه مطلب واسه همه ی 88یا خصوصأ اونایی که الان ++C میخونن. قبل از اینکه شروع کنم بد نیست بگم الان ++C رقابت شدیدی با جاوا داره و خیلی از برنامه های تجاری به این زبان نوشته میشن و توی خیلی از دانشگاهها ++C به عنوان برنامه نویسی پیشرفته تدریس میشه. اینا رو گفتم که دست کم نگیریدش ...من شخصأ خیلی دوست دارم اگه فرصت کردم ++C یا #C رو به عنوان زبان مکمل یاد بگیرم. ++C زبان برنامهنویسی ++C یک زبان برنامهنویسی کامپیوتری همه منظوره، شی گرا، سطح بالا و چندرگه (که از برنامهنویسی رویهای، تجرید دادهها و برنامهنویسی شئ گرا پشتیبانی میکند)، عمومی و با قابلیتهای سطح بالا و سطح پایین میباشد. این زبان دارای قابلیتهای انواع داده ایستا، نوشتار آزاد، چندمدلی، معمولاً زبان ترجمه شده با پشتیبانی از برنامهنویسی ساختیافته، برنامهنویسی شیگرا، برنامه نویسی جنریک است. ++C به همراه جد خود C از پرطرفدار ترین زبانهای برنامهنویسی تجاری هستند. زبان ++c یک زبان سطح میانی در نظر گرفته میشود. این زبان دارای قابلیت زبانهای سطح بالا و پایین بصورت همزمان است. زبان ++C توسط بییارنه استراستروپ دانمارکی در سال ???? در آزمایشگاههای بل (Bell Labs)، برای بهبود زبان سی و بر مبنای آن ساخته شد و آن را "C با کلاس" (C With Classes) نامگذاری نمودند. در سال ???? به ++c تغییر نام داد. توسعه با اضافه نمودن کلاسها و ویژگیهای دیگری مانند توابع مجازی، سربارگزاری عملگرها، وراثت چندگانه، قالب توابع، و پردازش استثنا انجام شد. این زبان برنامهنویسی در سال ???? تحت نام ISO/IEC 14882:1998 استاندارد شد. نسخه فعلی استاندارد این زبان ISO/IEC 14882:2003 است. نسخه جدیدی از استاندارد (که به صورت غیررسمی C++0x نامیده میشود) در دست تهیهاست. نام ++C این نام منسوب به ریک ماسکیتی (اواسط ????) است و برای اولین بار در دسامبر سال ???? به کار برده شد. در طول مدت تحقیق این زبان بنام «C جدید» و بعدها «C با کلاس» خوانده شد. در علوم کامپیوتر هنوز هم ++C به عنوان ابر ساختار C شناخته میشود. آخرین نام از عملگر ++ در زبان C (که برای افزایش مقدار متغیر به اندازه یک واحد بکار میرود) و یک عرف معمول برای نشان دادن افزایش قابلیتها توسط + ناشی گشتهاست. با توجه به نقل قولی از استراستروپ: «این نام ویژگیها تکاملی زبان در C را نشان میدهد.» +C نام زبانی غیرمرتبط به این زبان است. استراستروپ مبدا این نام را در فصل اول کتاب خود «زبان برنامهنویسی ++C» اشاره مینماید که معنی دیگر ++C را میتوان در ضمائم کتاب جرج ارول بنام ???? یافت. در سه قسمت از زبان تخیلی Newspeak «کلمات C» برای اشاره به لغات فنی و حرفهای بکار میرود. «دو علامت +» برای ایجاد صفات عالی از صفات Newspeak به کار میرفت بنابراین ++C به معنای زبانی با بیشترین شباهت به C است. وقتی که به صورت خصوصی از ریک ماسکیتی در مورد این اسم سوال شد او در جواب گفت که این اسم بصورت خودمانی در بین آنها به کار میرفتهاست و تصور نمیکردند که این نام بصورت نام رسمی این زبان درآید. توسعه آینده ++C همچنان در حال تکامل است تا نیازهای آینده را پاسخگو باشد. نسخه جدید استاندارد ++C در حال بررسی است و تحت عنوان C++0x است که انتظار میرود در سال ???? منتشر گردد. تغییرات کنونی نشان میدهد که که همچنان به صورت چندمدلی ++C تاکید میگردد. توسعههای مهم پشتیبانی از چندرشتهای و مفاهیمی برای راحت نمودن کار با قالبهاست. اضافه نمودن ویژگی جمعآوری زباله به آن به شدت مورد بحث است. Boost.org گروهی برای بیشترین استفاده از ویژگیهای فعلی ++C میباشد. آنها ویژگیهای تابعی و فرابرنامهنویسی آن را گسترش میدهند و در مورد ++C به کمیته استاندارد نصیحتهایی نمودهاست که کدام ویژگیها خوب عمل نمیکنند و کدامها نیاز به توسعه دارند. ویژگیهای معرفی شده در ++C در مقایسه با C زبان ++C ویژگیهای جدیدی را معرفی نمودهاست مانند تعریف متغیر به عنوان عبارت، تغییر نوعهای همانند تابع، new/delete، نوع داده bool، توابع درونخطی، آرگومان پیشفرض، گرانبارسازی عملگر و تابع، فضای نام و عملگر تعیین حوزه ::، کلاسها (شامل تمام ویژگیهای مربوط به کلاسها همانند وراثت، اعضای تابع، توابع مجازی، کلاسهای انتزاعی، و سازندهها)، قالبها، پردازش استثنا، کنترل نوع زمان اجرا، عملگرهای سربار شده ورودی (<<) و خروجی (>>). برخلاف باور عموم ++C نوع داده ثابت را معرفی ننمودهاست. کلمه const کمی پیش از استفاده از این کلمه در ++C توسط زبان C بصورت رسمی بکار گرفته شد. در بعضی حالات ++C تعداد کنترل نوع بیشتری نسبت به زبان C انجام میدهد. توضیحات با استفاده از // قبل از زبان C در زبان BCPL معرفی شده بود که مجدداً در زبان ++C به کار گرفته شد. بعضی ویژگیهای ++C بعدا توسط C به کار گرفته شد مانند نحوه تعریف for، توضیحات به شکل ++C (با استفاده از //)، و کلمه inline با وجود اینکه تعریف این کلمه در C با تعریف آن در زبان ++C هماهنگی ندارد. همچنین در C ویژگیهایی معرفی شدهاست که در ++C وجود ندارند مانند ماکروهای قابل تغییر و استفااده بهتر از آرایهها به عنوان آرگومان. بعضی کامپایلرها این ویژگیها را پیاده نمودهاند اما در بقیه این ویژگیها موجب ناهماهنگی میگردد. اشیا سی++ چندین ویژگی شیگرا را زبان سی معرفی نمود معرفی کلاس چهار ویژگی که در زبانهای شیگرا و بعضا غیر شیگرا حضور دارد یعنی انتزاع، بستهبندی، وراثت، و چندریختی را فراهم کرد. اشیا نمونههای ساخته شده از کلاس در زمان اجرا هستند. میتوان کلاس را نمونهای از قالبها دانست که چندین مورد از آنها بوجود میآید. محیطهای برنامه نویسی یک برنامه به زبان ++C میتواند در محیطهای ++Turbo C++ ,Borland C++ ,Dev C در ویندوز و GCC در لینوکس نوشته شود. این محیطهای برنامهنویسی، همراه با یک کمپایلر عرضه میشوند که کار تبدیل برنامه به فایل اجرایی را راحت میکند.
قالب جدید وبلاگ پیچک دات نت |