സി++

സി++(/ˌsiːˌplʌsˈplʌs/) എന്നത് സി പ്രോഗ്രാമിംഗ് ഭാഷയുടെ അല്ലെങ്കിൽ "സി വിത്ത് ക്ലാസെസ്സ്" എന്നതിന്റെ ഒരു വിപുലീകരണമായി ബ്യാൻ സ്ട്രൗസ്ട്രെപ്  സൃഷ്ടിച്ച ഒരു പൊതു-ഉദ്ദേശ്യ പ്രോഗ്രാമിംഗ് ഭാഷയാണ്. കാലക്രമേണ ഭാഷ ഗണ്യമായി വികസിച്ചു, ആധുനിക സി++ന് ഇപ്പോൾ ഒബ്ജക്റ്റ്-ഓറിയന്റഡ്, ജെനറിക്, ഫങ്ഷണൽ ഫീച്ചറുകൾ ഉണ്ട്, കൂടാതെ ലോ-ലെവൽ മെമ്മറി മാനിപ്പുലേഷനുള്ള സൗകര്യങ്ങളും ഉണ്ട്. ഇത് മിക്കവാറും എല്ലായ്‌പ്പോഴും കംപൈൽ ചെയ്‌ത ഭാഷയായാണ് നടപ്പിലാക്കുന്നത്, കൂടാതെ സ്വതന്ത്ര സോഫ്‌റ്റ്‌വെയർ സമിതി, എൽഎൽവിഎം(LLVM), മൈക്രോസോഫ്റ്റ്, ഇന്റൽ, ഒറാക്കിൾ, ഐബിഎം എന്നിവയുൾപ്പെടെ പല വെണ്ടർമാരും സി++ കമ്പൈലറുകൾ നൽകുന്നു, അതിനാൽ ഇത് പല പ്ലാറ്റ്‌ഫോമുകളിലും ലഭ്യമാണ്.
 ചരിത്രം 
1983-1985 കാലത്ത് ബ്യാൻ സ്ട്രൗസ്ട്രെപ് ആണ് ഇത് വികസിപ്പിച്ചെടുത്തത്. 1983 ന് മുൻപ്, അദ്ദേഹം സി പ്രോഗ്രാമിങ് ഭാഷ പുതുക്കി ചേർത്ത് അതിനെ സി വിത് ക്ലാസ്സെസ്  എന്ന് വിളിച്ചു. ഇതിനു വേണ്ടി അദ്ദേഹം പ്രോഗ്രാമിങ്ങിൽ 'ഒബ്ജക്റ്റ്’ എന്ന ആശയം സിമുല എന്ന കമ്പ്യൂട്ടർ ഭാഷയിൽ നിന്ന് കടമെടുത്തു (എന്നാൽ പ്രായോഗിക ഉപയോഗത്തിന് ഭാഷ വളരെ മന്ദഗതിയിലായിരുന്നു, അതേസമയം ബിസിപിഎൽ(BCPL) വേഗതയേറിയതാണെങ്കിലും വലിയ സോഫ്റ്റ്‌വെയർ വികസനത്തിന് അനുയോജ്യമല്ലാത്ത നിമ്ന്ന(low level) തലത്തിലുള്ളതായിരുന്നു), കൂടെ സിയുടെ ശക്തിയും ലാളിത്യവും. 1983 ലാണ് സി++ എന്ന പേര് ഇതിന് നൽകിയത്. ഒരു പുതിയ ഭാഷ സൃഷ്ടിക്കുന്നതിനുള്ള പ്രചോദനം അദ്ദേഹത്തിൻ്റെ പിഎച്ച്ഡി തീസിസിനായുള്ള പ്രോഗ്രാമിംഗിലെ സ്ട്രോസ്ട്രപ്പിൻ്റെ പ്രവർത്തി പരിചയത്തിൽ നിന്നാണ്.

 സവിശേഷതകൾ 
250px|right|thumb|ഗ്നു ഈമാക്സിൽ ജി.സി.സി. ഉപയോഗിച്ച് സി++ പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുന്നു
 ഒബ്ജക്റ്റ് ഓറിയന്റഡ് കമ്പ്യൂട്ടർ പ്രോഗ്രാമിങ് (object oriented)- അത്യധികം സങ്കീർണങ്ങളായ കമ്പ്യൂട്ടർ പ്രോഗ്രാമുകൾ ഇതുപയോഗിച്ച് വികസിപ്പിച്ചെടുക്കുവാൻ കഴിയും.
 ഇൻഹെറിറ്റൻസ് ( Inheritance) - സമാനസ്വഭാവമുള്ള പ്രോഗ്രാം ഭാഗങ്ങൾ ഒന്നിലധികം പ്രാവശ്യം ഒന്നിലധികം പ്രാവശ്യം എഴുതുന്നതൊഴിവാക്കാൻ സാധിക്കുന്നതു മൂലം പ്രോഗ്രാമ്മിങ്ങ് സമയം ലാഭിക്കാൻ സാധിക്കുന്നു.
 എൻ‌ക്യാപ്സുലേഷൻ (Encapsulation)- ക്ലാസ്സുകളുടെ ഉപയോഗം ദത്തങ്ങളൂടെയും നിർദ്ദേശങ്ങളുടെയും സുരക്ഷിതത്വം ഉറപ്പാക്കുന്നു.
 പോളിമോർഫിസം (Polimorphism) - സങ്കീർണ്ണമായ പ്രോഗ്രാമ്മിങ്ങ് നിർദ്ദേശങ്ങങ്ങൾക്ക് ലളിതമായ ഒരു കവചം സൃഷ്ടിക്കുന്നു

 ഹലോ വേൾഡ് പ്രോഗ്രാം 
താഴെ സി++ൽ ഉള്ള ഒരു ഹലോ വേൾഡ് പ്രോഗ്രാം മാനകരൂപത്തിലും, ഏറെ പ്രചാരത്തിലുള്ള ടർബോ സി++ കമ്പൈലർ രീതിയിലും കൊടുത്തിരിക്കുന്നു.
Open issues for The C++ Programming Language (3rd Edition) - This code is copied directly from Bjarne Stroustrup's errata page (p. 633). He addresses the std::endl issue.
Also see www.research.att.com and www.delorie.com/djgpp/ for detail on the valid implicit return value of main. The implicit return of zero is not available for other functions.
 മാനക രൂപം ടർബോ സി++ രൂപം#include <iostream>

int main()
{
  std::cout << "Hello, world!"<< std::endl;
  return 0;
}#include <iostream.h>

void main()
{
   cout<<"Hello, world!\n";
}

ഈ പ്രോഗ്രാം തരുന്ന ഫലം (ഔട്ട്പുട്ട്) താഴെ പറയും പ്രകാരമായിരിക്കും.
''Hello, world!''

വിവിധ കംപൈലറുകൾക്കനുസരിച്ച് സി ++ പ്രോഗ്രാമ്മിന്റെ സ്ട്രക്ട്ച്ചറുകൾ ചെറുതായി വത്യാസപ്പെട്ടുകൊണ്ടിരിക്കും.

 ഇവയും കാണുക 
 സി (പ്രോഗ്രാമിങ് ഭാഷ)
 ഡെവ്-സി++
 ഗ്നു കമ്പൈലർ ശേഖരം

 അടിക്കുറിപ്പുകൾ 
പ്രകൃതി ദൃശ്യങ്ങൾ

 അവലംബം 

















 Scott Meyers (2005). Effective C++. Third Edition. Addison-Wesley. ISBN 0-321-33487-6

 പുറത്തേക്കുള്ള കണ്ണികൾ 

 Introduction to C++
 C++ Annotations - A thorough and detailed C++ reference
 A paper by Stroustrup showing the timeline of C++ evolution (1979-1991)
 Apache C++ Standard Library Documentation
 Standards Committee Page: JTC1/SC22/WG21 - C++
 Standard for Programming Language C++ (Working Draft June 2008)
 C++ FAQ Lite by Marshall Cline
 Boost C++ Libraries
  C++ വിക്കിപാഠഷാല
 Computer World interview with Bjarne Stroustrup
 CrazyEngineers.com interview with Bjarne Stroustrup 
 Interactive web-based version of Comeau C++ compiler 
 The State of the Language: An Interview with Bjarne Stroustrup (August 15, 2008) 

വർഗ്ഗം:പ്രോഗ്രാമിങ് ഭാഷകൾ
വർഗ്ഗം:സി പ്രോഗ്രാമിങ് ഭാഷാ കുടുംബം
വർഗ്ഗം:സി++
അവലംബം