ಸಿ++

ಕಂಪ್ಯೂಟರ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳಲ್ಲಿ “ಸಿ ಪ್ಲಸ್ ಪ್ಲಸ್” (ಅಥವಾ “ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್”) ಕೂಡಾ ಒಂದು. ಇಂಗ್ಲಿಷ್ ಅಕ್ಷರಮಾಲೆಯ “ಸಿ” ಅಕ್ಷರವನ್ನು ಬಳಸಿಕೊಂಡ “ಸಿ” ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ವಿಸ್ತೀರ್ಣ ಎಂದು “ಸಿ ಪ್ಲಸ್ ಪ್ಲಸ್” ಭಾಷೆಯನ್ನು ಪರಿಗಣಿಸಬಹುದು. ಈ ಎರಡೂ ಭಾಷೆಗಳನ್ನು  ಯಾವುದೇ ಬಗೆಯ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಕೆಲಸಕ್ಕೆ ಬಳಸಿಕೊಳ್ಳಬಹುದು; ಆದ್ದರಿಂದ ಇವುಗಳನ್ನು ಜೆನೆರಲ್ ಪರ್ಪಸ್ ಎಂದು ಕರೆಯುವುದು ರೂಢಿ. “ಇದನ್ನು ಮಾಡು,” ಎಂದು ನಿರ್ದೇಶಿಸುವ ಕ್ರಿಯಾವಾಚಕಗಳನ್ನು ಬಳಸುವ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳನ್ನು “ಆಜ್ಞಾವಾಚಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಎನ್ನುತ್ತಾರೆ. ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಒಂದು ಆಜ್ಞಾವಾಚಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಾಗುವುದರ ಜೊತೆಗೇ ವಿಭಿನ್ನವಾದ ಒಂದು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ರೀತಿಯನ್ನೂ ಒಳಗೊಂಡಿದೆ; ಇದು “ ಆಬ್ಜೆಕ್ಟ್ ಓರಿಯೆಂಟೆಡ್” ಅಥವಾ “ವಸ್ತು ಕೇಂದ್ರೀಕೃತ” ಎಂಬ ವಿಧಾನ.  

ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಯನ್ನು ಸೃಷ್ಟಿಸಿದ ಉದ್ದೇಶಗಳು ಹಲವು – (1) ಸಿಸ್ಟಂ ಪ್ರೋಗ್ರಾಮಿಂಗ್, (2) ಅಡಕ ಗಣಕಗಳ  ಪ್ರೋಗ್ರಾಮಿಂಗ್ (3) ಬೃಹತ್ ಗಾತ್ರದ ತಂತ್ರಾಂಶಗಳ ಸೃಷ್ಟಿ, (4) ತಂತ್ರಾಂಶ ಭಾಗಗಳ ಮರುಬಳಕೆ, (5) ಸೃಷ್ಟಿಸಲಾದ ತಂತ್ರಾಂಶಗಳ ಕಾರ್ಯಕ್ಷಮತೆ ಹೆಚ್ಚಿರಬೇಕೆಂಬ ಆಶಯ. ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಯನ್ನು ಅನೇಕ ಕಡೆ ಬಳಸಲಾಗುತ್ತದೆ, ಉದಾಹರಣೆಗೆ  ಈ-ಕಾಮರ್ಸ್, ವೆಬ್ ಶೋಧನಾ ಯಂತ್ರ, SQL ಡೇಟಾಬೇಸ್, ಟೆಲಿಫೋನ್ ಸ್ವಿಚ್ ಗಳಲ್ಲಿ ಬಳಕೆಯಾಗುವ ತಂತ್ರಾಂಶ, ಇತ್ಯಾದಿ.

ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಯನ್ನು ಬೆಲ್ ಲ್ಯಾಬ್ಸ್ ಎಂಬ ಪ್ರಯೋಗಾಲಯದಲ್ಲಿ 1979ರಲ್ಲಿ ಅಭಿವೃದ್ಧಿ ಪಡಿಸಲು ಪ್ರಾರಂಭಿಸಿದವನು  ಜಾರ್ನ್ ಸ್ಟ್ರೌಸ್ಟ್ರಪ್ ಎಂಬ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನಿ.  ಇದೇ ಪ್ರಯೋಗಾಲಯದಲ್ಲಿ “ಸಿ” ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯನ್ನು ಕೂಡಾ ಅನ್ವೇಷಿಸಲಾಗಿತ್ತು ಮತ್ತು ಅದು ಈಗಾಗಲೇ ಸಾಕಷ್ಟು ಜನಪ್ರಿಯತೆ ಪಡೆದಿತ್ತು.  “ಸಿ” ಭಾಷೆಯನ್ನು ಹೋಲುವ ಆದರೆ ಅದಕ್ಕಿಂತಲೂ ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾದ ಭಾಷೆಯ ಸೃಷ್ಟಿ ಆತನ ಉದ್ದೇಶವಾಗಿತ್ತು. “ಸಿ” ಭಾಷೆಯಲ್ಲಿ “ಎ” ಎಂಬ ಒಂದು ಅಂಕಿಯನ್ನು ಹೆಚ್ಚಿಸಬೇಕಾದರೆ “ಎ++” ಎಂಬ ಸರಳವಾದ ನಿರ್ದೇಶವಿದೆ. “ಸಿ” ಭಾಷೆಯನ್ನು ಇನ್ನಷ್ಟು ಬೆಳೆಸುವ ಉದ್ದೇಶ ಹೊಂದಿದ್ದರಿಂದ ಈ ಭಾಷೆಗೆ “ಸಿ++” ಎಂಬ ಹೆಸರನ್ನು ಸೂಕ್ತವೆಂದು ಅನ್ವೇಷಕನಿಗೆ ತೋರಿತು.   ಅಂತರರಾಷ್ಟ್ರೀಯ ಮಾನಕ ಸಂಸ್ಥೆಯು ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಗೆ ಮಾನ್ಯತೆ ನೀಡಿದೆ. ಮೊದಲು 1998ರಲ್ಲಿ ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಗೆ ಇಂಥ ಮಾನ್ಯತೆ ಸಿಕ್ಕಿತು (ISO/IEC 14882:1998).  ಡಿಸೆಂಬರ್ 2014ರಲ್ಲಿ ಇತ್ತೀಚಿನ ಬದಲಾವಣೆಗಳಿಗೆ ಮಾನ್ಯತೆ ನೀಡಲಾಗಿದೆ (ISO/IEC 14882:2014). 
 
ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಯ ಪ್ರಭಾವ ಅನೇಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳ ಮೇಲೆ ಆಗಿದೆ. ಸೀ ಶಾರ್ಪ್, ಡಿ, ಜಾವಾ, ಮತ್ತು “ಸಿ” ಭಾಷೆಯ ಹೊಸ ಅವತರಣಿಕೆಗಳ ಮೇಲೆ ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಯ ಪ್ರಭಾವ ಗುರುತಿಸಬಹುದು. 

 ಇತಿಹಾಸ  
ಜಾರ್ನ್ ಸ್ಟ್ರೌಸ್ಟ್ರಪ್ ಎಂಬ ಡೆನ್ಮಾರ್ಕ್ ಮೂಲದ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನಿ 1979ರಲ್ಲಿ “ಕ್ಲಾಸ್ ಉಳ್ಳ ಸಿ” (“ಸಿ” ವಿತ್ ಕ್ಲಾಸಸ್) ಎಂಬ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯನ್ನು ರೂಪಿಸಲು ಪ್ರಾರಂಭಿಸಿದ. ಇದೇ ಮುಂದೆ ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್ ಭಾಷೆಯ ಅಡಿಗಲ್ಲಾಯಿತು. ಹೊಸ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗೆ ಹುಡುಕಾಟ ಪ್ರಾರಂಭಿಸಿದ್ದು ಏಕೆಂದು ಸ್ಟ್ರೌಸ್ಟ್ರಪ್ ವಿವರಿಸಿದ್ದಾನೆ – “ನಾನು ಪಿಎಚ್.ಡಿ. ಸಂಶೋಧನೆಯಲ್ಲಿ ತೊಡಗಿದ್ದಾಗ “ಸಿಮ್ಯುಲಾ” (Simula) ಎಂಬ ಭಾಷೆಯ ಅಂಶಗಳು “ಸಿ” ಭಾಷೆಯಲ್ಲಿ ಇದ್ದಿದ್ದರೆ ದೊಡ್ಡ ಗಾತ್ರದ ತಂತ್ರಾಂಶಗಳನ್ನು ಕಟ್ಟಲು ಸುಲಭವಾಗುತ್ತಿತ್ತಲ್ಲವೇ ಎಂದು ಯೋಚಿಸುತ್ತಿದ್ದೆ.  ಅಂಥದೊಂದು ಭಾಷೆಯನ್ನು ಪ್ರಯೋಗಕ್ಕೆ ತಂದಾಗ ತಂತ್ರಾಂಶಗಳ ಓಟದ ವೇಗ ತೀರಾ ಕಡಿಮೆಯಾಗಿದ್ದನ್ನು ಗಮನಿಸಿದೆ. ಇದಕ್ಕೆ ತದ್ವಿರುದ್ಧವಾಗಿ BCPL ಎಂಬ ಭಾಷೆಯಲ್ಲಿ ಕಟ್ಟಿದ ತಂತ್ರಾಂಶಗಳು ವೇಗದಲ್ಲಿ ಮುಂದಿದ್ದರೂ ಆ ಭಾಷೆ ತೀರಾ ಸರಳವಾಗಿದ್ದು ದೊಡ್ಡ ಗಾತ್ರದ ತಂತ್ರಾಂಶಗಳನ್ನು ನಿರ್ಮಿಸಲು ಸೂಕ್ತವಾಗಿರಲಿಲ್ಲ.” ಪಿಎಚ್.ಡಿ. ಅಧ್ಯಯನದ ನಂತರ ಏಟಿ ಅಂಡ್ ಟಿ ಬೆಲ್ ಲ್ಯಾಬ್ಸ್ ಎಂಬ ಪ್ರಯೋಗಾಲಯದಲ್ಲಿ ಉದ್ಯೋಗದಲ್ಲಿ ತೊಡಗಿದ ಸ್ಟ್ರೌಸ್ಟ್ರಪ್ ಯೂನಿಕ್ಸ್ ನಿರ್ವಹಣಾ ವ್ಯವಸ್ಥೆಯ (ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಂ) ತಿರುಳನ್ನು (kernel) ಅಧ್ಯಯನ ಮಾಡುವುದರಲ್ಲಿ ನಿರತನಾದ. ತನ್ನ ಪಿಎಚ್.ಡಿ. ಅನುಭವದ ಆಧಾರದ ಮೇಲೆ ಅವನು “ಸಿಮ್ಯುಲಾ” ಭಾಷೆಯಲ್ಲಿದ್ದ Class ಅಥವಾ “ವರ್ಗ” ಎಂಬ ಪರಿಕಲ್ಪನೆಯನ್ನು ಅಳವಡಿಸಿಕೊಂಡು  ಹೊಸದೊಂದು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯನ್ನು   ಅನ್ವೇಷಿಸಿದ. ಇದಕ್ಕೆ “ಸಿ ವಿತ್ ಕ್ಲಾಸಸ್” ಅಥವಾ “ವರ್ಗಗಳುಳ್ಳ ಸಿ” ಎಂದು ಕರೆದ. ಮುಂದೆ ಇದೇ “ಸೀ ಪ್ಲಸ್ ಪ್ಲಸ್” ಭಾಷೆಯಾಗಿ ರೂಪುಗೊಂಡಿತು. ತನ್ನ ಹೊಸ ಭಾಷೆಯ ಅಡಿಗಲ್ಲಾಗಿ “ಸಿ” ಭಾಷೆಯನ್ನು ಆಯ್ದುಕೊಳ್ಳಲು ಕಾರಣ ಅದರ ಜನಪ್ರಿಯತೆ, ವೇಗ ಮತ್ತು ಎಲ್ಲಾ ಸಂದರ್ಭಗಳಲ್ಲೂ ಬಳಸಬಹುದಾದುದು ಎಂಬ ಗುಣಗಳು. ಆದರೆ ಏಡಾ (Ada), ALGOL68, ಮತ್ತು ML ಭಾಷೆಗಳಿಂದಲೂ ಸ್ಟ್ರೌಸ್ಟ್ರಪ್ ಅನೇಕ ಅಂಶಗಳನ್ನು ಸ್ವೀಕರಿಸಿದ್ದಾನೆ.        

1983ರಲ್ಲಿ “ಸಿ ವಿತ್ ಕ್ಲಾಸಸ್” ಭಾಷೆಗೆ “ಸಿ  ಪ್ಲಸ್ ಪ್ಲಸ್” ಎಂದು ಮರುನಾಮಕರಣ ಮಾಡಲಾಯಿತು. ಅನೇಕ ಹೊಸ ಅಂಶಗಳನ್ನು “ಸಿ ಪ್ಲಸ್ ಪ್ಲಸ್” ಒಳಗೊಂಡಿತ್ತು. 
 ವರ್ಚುಯಲ್ ಫಂಕ್ಷನ್ ಅಥವಾ ಮಿಥ್ಯಾ ನಿಯೋಗಗಳು virtual function
 ನಿಯೋಗಗಳ ಹೆಸರುಗಳ ಪುನರ್ಬಳಕೆ ಮತ್ತು ಗಣಿತ ಚಿಹ್ನೆಗಳ ಪುನರ್-ನಿರೂಪಣೆ   operator overloading
 ರೆಫರೆನ್ಸ್ (reference)
 ಕಾನ್ಸ್ಟಂಟ್ಸ್ 
 ಕಾಮೆಂಟ್ಸ್ ಹಾಕಲು  //  ಬಳಕೆ  
 ಪ್ರೋಗ್ರಾಮ್ ಚಾಲ್ತಿಯಲ್ಲಿರುವಾಗ ಬೇಕಾದಷ್ಟು ಸ್ಮೃತಿಯನ್ನು ಕಂಪ್ಯೂಟರ್ ನಿರ್ವಹಣಾ ವ್ಯವಸ್ಥೆಯಿಂದ ಪಡೆಕುಕೊಳ್ಳಲು/ಹಿಂತಿರುಗಿಸಲು ನ್ಯೂ ಮತ್ತು ಡಿಲೀಟ್ ಎಂಬ ಹೊಸ ನಿಯೋಗಗಳು 
 ಹೊಸ “ಟೈಪ್” ಪರೀಕ್ಷಣಾ ವ್ಯವಸ್ಥೆ

1985ರಲ್ಲಿ “ದ ಸಿ ಪ್ಲಸ್ ಪ್ಲಸ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಲ್ಯಾಗ್ವೇಜ್” (The C++ Programming Language) ಎಂಬ ಪುಸ್ತಕವನ್ನು ಜಾನ್ ಸ್ಟ್ರೌಸ್ಟ್ರಪ್ ಪ್ರಕಟಿಸಿದ.  ಅದೇ ವರ್ಷ “ಸಿ ಪ್ಲಸ್ ಪ್ಲಸ್” ಭಾಷೆಯ ವಾಣಿಜ್ಯ ಆವೃತ್ತಿ ಕೂಡಾ ಬಿಡುಗಡೆಯಾಯಿತು. ಈ ಪುಸ್ತಕದ ಮೂರನೇ ಆವೃತ್ತಿ 2010ರಲ್ಲಿ ಪ್ರಕಟವಾಯಿತು. 

 ಭಾಷೆ 
ಸಾಧಾರಣವಾಗಿ ಹೊಸ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯನ್ನು ಕಲಿಯುವಾಗ ವಿದ್ಯಾರ್ಥಿಗಳು ಮೊದಲು ಬರೆಯುವ ತಂತ್ರಾಂಶ “ಹೆಲೋ ವರ್ಲ್ಡ್” ಅಥವಾ “Hello World” ಎಂದು ತೆರೆಯ ಮೇಲೆ ಮುದ್ರಿಸುವ ಒಂದು ಸರಳ ಪ್ರೋಗ್ರಾಂ. ಇದರ “ಸಿ ಪ್ಲಸ್ ಪ್ಲಸ್” ಅವತರಣಿಕೆ ಕೆಳಗೆ ಕೊಟ್ಟಿದೆ. 

#include <iostream>

int main()
{
	std::cout << "Hello, world!\n";
}

ವೈಶಿಷ್ಟ್ಯಗಳು:
ಆಬ್ಜೆಕ್ಟ್- ಓರಿಎಂಟೆಡ್-ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಆಬ್ಜೆಕ್ಟ್-ಓರಿಎಂಟೆಡ್ ಲಕ್ಷಣ  ಹೊಂದಿದರಿಂದ ಒಂದು ಕೋಡ್ ಬೇರೆ ರೀತಿಯಲ್ಲಿ ಮರುಬಳಕೆ ಮಾಡಬಹುದು.
ಪೋರ್ಟಬಿಲಿಟಿ - ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಮೈಕ್ರೋಸಾಫ್ಟ್ ವಿಂಡೋಸ್,ಲಿನಕ್ಸ್,ಮ್ಯಾಕ್,ಉಬುಂಟು ಮುಂತಾದ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್‍ನಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು.
ಬ್ರೆವಿಟಿ- ಬೇರೆ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗೆ ಹೋಲಿಸಿದ್ದರೆ ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಕಡಿಮೆ ಸಾಲುಗಳಲ್ಲಿ ಪ್ರೋಗ್ರಾಮ್ ನಿರ್ಮಾಣ ಮಾಡಬಹುದು.
ಮೊಡ್ಯೂಲ್ಯಾರ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ - ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮ್‍ನಲ್ಲಿ ಅಪ್ಡೇಟ್ ಹಾಗು ಅಡ್ಡೋನ್ಸ್ ಸುಲಬವಾಗಿ ತರಿಸಬಹುದು.
C ಕಂಪ್ಯಾಟಿಬಿಲಿಟಿ - ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಲ್ಲಿ C ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಕೋಡ್ ಬಳೆಸಬಹುದು.
ಸ್ಪೀಡ್ - ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಕಡಿಮೆ ಸಾಲುಗಳಲ್ಲಿ ಪ್ರೋಗ್ರಾಮ್ ನಿರ್ಮಾಣ ಮಾಡಬಹುದಾಗಿದ್ದರಿಂದ ಪ್ರೋಗ್ರಾಮ್ ಎಸ್ಎಕ್ಯುಷನ್ ವೇಗವಾಗಿದೆ.
ವಿಸ್ತಾರವಾದ ಲೈಬ್ರರಿ ಫಂಕ್ಷನ್ - ಡೀಫಾಲ್ಟ್ ಫಂಕ್ಷನ್ ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯಲ್ಲಿ ಇರುವುದರಿಂದ ಪ್ರೋಗ್ರಾಮ್ ನಿರ್ಮಾಣ ಸುಲಭವಾಗಿದೆ.

ಸಿ++(C++) ಟೋಕನ್‍:
ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಲ್ಲಿರುವ ಒಂದು ಚಿಕ್ಕ ಪ್ರತ್ಯೇಕ ಘಟಕಗಳನ್ನು ಟೋಕನ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.ಸಿ++(C++)ನಲ್ಲಿ ೬ ಟೋಕನ್‍ಗಳಿವೆ ೧)ಐಡೆಂಟಿಫೈಯರ್ಸ್ ೨)ಕೀವರ್ಡ್ಸ್ ೩)ಕಾನ್‍ಸ್ಟೆಂಟ್ ೪)ಲೀಟರಲ್ಸ್ ೫)ಪಂಕ್ಟುಟರ್ಸ್ ೬)ಆಪರೇಟರ್ಸ್

  ಐಡೆಂಟಿಫೈಯರ್ಸ್ 
ಐಡೆಂಟಿಫೈಯರ್ಸ್ ಅರೇ ,ವೇರಿಯೇಬಲ್ಸ್, ಫಂಕ್ಷನ್, ಇತ್ಯಾದಿ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅಂಶಗಳಿಗೆ ನೀಡಿವ ಹೆಸರು.

 ಕೀವರ್ಡ್ಸ್ 
ವಿಶೇಷ ಅರ್ಥವನ್ನು ನೀಡುವ ಪೂರ್ವನಿರ್ಧರಿತ ಪದ.

 ಕಾನ್‍ಸ್ಟೆಂಟ್- 
ಪ್ರೋಗ್ರಾಮ್ ನಿರ್ವಹಣೆಯ ಅವಧಿಯಲ್ಲಿ ಬದಲಾಗದಿರುವ ಸ್ಥಿರಕ್ಕೆ ಕಾನ್‍ಸ್ಟೆಂಟ್ ಎಂದು ಕರೆಯುತ್ತೆವೆ.ಸಿ++(C++)ನಲ್ಲಿ ೪ ಕಾನ್‍ಸ್ಟೆಂಟ್‍ಗಳಿವೆ .

ಇಂಟಿಜರ್ ಕಾನ್ಸ್ಟಂಟ್-ಅಲ್ಪಭಾಗ ಇಲ್ಲದಿರುವ ಸಂಖ್ಯೆಯನ್ನು ಇಂಟಿಜರ್ ಕಾನ್‍ಸ್ಟೆಂಟ್ ಎಂದು ಕರೆಯುತ್ತೇವೆ.ಸಿ++(C++)ನಲ್ಲಿ ೪ ಇಂಟಿಜರ್ ಕಾನ್‍ಸ್ಟೆಂಟ್‍ಗಳಿವೆ.
ಡೆಸಿಮಲ್ ಕಾನ್‍ಸ್ಟೆಂಟ್ 
 ಓಕ್ಟಾಲ್ ಕಾನ್‍ಸ್ಟೆಂಟ್ 
ಹೆಕ್ಸಾಡೆಸಿಮಲ್ ಕಾನ್‍ಸ್ಟೆಂಟ್ 
ಅನ್ಸೈನೆಡ್ ಕಾನ್‍ಸ್ಟೆಂಟ್.
ಫ್ಲೋಟಿಂಗ್ ಕಾನ್‍ಸ್ಟೆಂಟ್-ಅಪೂರ್ಣ ಸಂಖ್ಯೆಯನ್ನು  ಪ್ರತಿನಿಧಿಸಲು ಫ್ಲೋಟಿಂಗ್ ಕಾನ್‍ಸ್ಟೆಂಟ್ ಬಳಸಲಾಗುತ್ತದೆ.ಇದ್ದನ್ನು ರಿಯಲ್ ಕಾನ್‍ಸ್ಟೆಂಟ್ ಎಂದು ಕರೆಯುತ್ತಾರೆ.  ಇದರಲ್ಲಿ "ಮಂಟಿಸ್ಸ" ಸಂಖ್ಯೆಯ ಮೌಲ್ಯವನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಎಸ್ಪೊನೆಂಟ್ ಸಂಖ್ಯೆಯ ಪ್ರಾಧಾನ್ಯವನ್ನು ಸೂಚಿಸುತ್ತದೆ.
ಕ್ಯಾರೆಕ್ಟರ್ ಕಾನ್‍ಸ್ಟೆಂಟ್-ಎರಡು ಏಕ ಉದ್ಧರಣ ಚಿಹ್ನೆಯ ನಡುವೆ ಇರುವ ಪದವನ್ನು ಕ್ಯಾರೆಕ್ಟರ್ ಕಾನ್‍ಸ್ಟೆಂಟ್ ಎಂದು ಕರೆಯುತ್ತೇವೆ.
ಸ್ಟ್ರಿಂಗ್ ಕಾನ್‍ಸ್ಟೆಂಟ್-ಎರಡು ಉದ್ದರಣ ಚಿಹ್ನೆಯ ನಡುವೆ ಇರುವ ಪದವನ್ನು ಸ್ಟ್ರಿಂಗ್  ಕಾನ್‍ಸ್ಟೆಂಟ್ ಎಂದು ಕರೆಯುತ್ತೆವೆ.

 ಪಂಕ್ಟುಟರ್ಸ್- 
ಸಿನ್ಟಾಟಿಕ್ ಮತ್ತು ಸಿಮಾಟಿಕ್ ಅರ್ಥ ನೀಡುವುದರಲ್ಲಿ ಪಂಕ್ಟುಟರ್ಸ್ ಪಾತ್ರ ಪ್ರಮುಖ. 
 "!" - ಸಮಾನವಿಲ್ಲ ಎಂಬುದ್ದನ್ನು ಪ್ರತಿನಿಧಿಸಲು 'ಈಕ್ವಲ್' ಚಿಹ್ನೆಯೊಂದಿಗೆ  ಬಳಸಲಾಗುತ್ತದೆ.
 "%" - ಫಾರ್ಮ್ಯಾಟ್ ಸ್ಪೇಸಿಫೈರ್ ಪ್ರತಿನಿಧಿಸಲು ಈ ಚಿಹ್ನೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. 
 & - ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಟೋಕನ್ ಪ್ರತಿನಿಧಿಸಲು ಈ ಚಿಹ್ನೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ.
 ";" - ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಸಾಲನ್ನು ಅಂತ್ಯಗೊಳಿಸುದನ್ನು ಪ್ರತಿನಿಧಿಸಲು ಈ ಚಿಹ್ನೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ.
 [] - "ಅರೇ"ಯನ್ನು ಪ್ರತಿನಿಧಿಸಲು ಈ ಚಿಹ್ನೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. 
 {} - ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಬ್ಲಾಕ್‍ನ ಆರಂಭ ಮತ್ತು ಅಂತ್ಯವನ್ನು ಪ್ರತಿನಿಧಿಸಲು ಈ ಚಿಹ್ನೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. 
 "\" - ಎಸ್ಕೇಪ್ ಸೀಕ್ವೆನ್ಸ್ ಪ್ರತಿನಿಧಿಸಲು ಈ ಚಿಹ್ನೆಯನ್ನು ಬಳಸಲಾಗುತ್ತದ್ದೆ. 

ಆಪರೇಟರ್ಸ್
 ಆಪರೇಟರ್ಸ್ ಲಾಜಿಕ್ ಮತ್ತು ಗಣಿತ ಆಪರೇಷನ್ ನಿರ್ವಹಿಸಲು ಕಂಪೈಲರ್ಗೆ ಸೂಚಿಸುತ್ತದೆ.ಸಿ++(C++)ನಲ್ಲಿ ೩ ಆಪರೇಟರ್ಸ್‌ಗಳಿವೆ. ಯೂಣರಿ ಆಪರೇಟರ್ಸ್, ಬೈನರಿ ಆಪರೇಟರ್ಸ್ ,ಟರ್ನರಿ ಆಪರೇಟರ್ಸ್''.

ಲೈಬ್ರರಿ ಫಂಕ್ಷನ್
ಸಿ++(C++)ನಲ್ಲಿ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಸಮಯ ಉಳಿಸಲು ಅನೇಕ ಡೀಫಾಲ್ಟ್ ಫಂಕ್ಷನ್‍ಗಳಿವೆ

ಮ್ಯಾಥಮೆಟಿಕಲ್ ಫಂಕ್ಷನ್ 

 (math.h) ಬಳಸಿ ಕೆಳಗಿರುವ ಮ್ಯಾಥಮೆಟಿಕಲ್ ಫಂಕ್ಷನ್ ಉಪಯೋಗಿಸಬಹುದು.
 sin(x)-ಆಂಗಲ್‍ನ ಸೈನ್ ಮೌಲ್ಯ ಕಂಡುಹಿಡಿಯುದರಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
 cos(x)-ಆಂಗಲ್‍ನ ಕೊಸೈನ್ ಮೌಲ್ಯ ಕಂಡುಹಿಡಿಯುದರಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
 tan(x)-ಆಂಗಲ್‍ನ ಟ್ಯಾಂಜೆಂಟ್ ಮೌಲ್ಯ ಕಂಡುಹಿಡಿಯುದರಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
 asin(x)-ಆಂಗಲ್‍ನ ಸೈನ್ ಇನ್ವೆರ್ಸ್ ಮೌಲ್ಯ ಕಂಡುಹಿಡಿಯುದರಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
 acos(x)-ಆಂಗಲ್‍ನ ಕೊಸೈನ್ ಇನ್ವೆರ್ಸ್ ಮೌಲ್ಯ ಕಂಡುಹಿಡಿಯುದರಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
 exp(x)- ಎಸ್ಪಿಯೊನೆಂಷಿಯಾಲ್  ಮೌಲ್ಯ ಕಂಡುಹಿಡಿಯುದರಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
 log(x)-'x'ನ ಲೋಗರಿಥಿಮ್ ಮೌಲ್ಯ ಕಂಡುಹಿಡಿಯುದರಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ.

ಕ್ಯಾರೆಕ್ಟರ್ ಫಂಕ್ಷನ್- 

 (ctype.h) ಬಳಸಿ ಕೆಳಗಿರುವ ಕ್ಯಾರೆಕ್ಟರ್ ಫಂಕ್ಷನ್ ಉಪಯೋಗಿಸಬಹುದು.
 isalpha(c)-'c' ಅಕ್ಷರವಾದರೆ "ಟ್ರೂ" ಇಲ್ಲದೇಹೋದರೆ "ಫಾಲ್ಸ್" ಎಂದು ಔಟ್ಪುಟ್  ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
 isdigit(c)-'c' ಸಂಖ್ಯೆವಾದರೆ "ಟ್ರೂ" ಇಲ್ಲದೇಹೋದರೆ "ಫಾಲ್ಸ್" ಎಂದು ಔಟ್ಪುಟ್  ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
 isalnum(c)-'c' ಸಂಖ್ಯೆ ಅಥವ ಅಕ್ಷರವಾದರೆ "ಟ್ರೂ" ಇಲ್ಲದೇಹೋದರೆ "ಫಾಲ್ಸ್" ಎಂದು ಔಟ್ಪುಟ್  ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
 islower(c)-'c' ಲೋವರ್ ಕೇಸ್ ಲೆಟರ್ ಆದಲ್ಲಿ "ಟ್ರೂ" ಇಲ್ಲದೇಹೋದರೆ "ಫಾಲ್ಸ್" ಎಂದು ಔಟ್ಪುಟ್  ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
 isupper(c)-'c' ಅಪ್ಪರ್ ಕೇಸ್ ಲೆಟರ್ ಆದಲ್ಲಿ "ಟ್ರೂ" ಇಲ್ಲದೇಹೋದರೆ "ಫಾಲ್ಸ್" ಎಂದು ಔಟ್ಪುಟ್  ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
 toupper(c)-'c' ವೇರಿಯೇಬಲ್‍ನ ಅಪ್ಪರ್ ಕೇಸ್ ಲೆಟರ್‍ಗೆ ಪರಿವರ್ತಿಸಲು ಸಹಾಯಮಾಡುತ್ತದೆ.
 tolower(c)-'c' ವೇರಿಯೇಬಲ್ ಲೋವರ್ ಕೇಸ್ ಲೆಟರ್‍ಗೆ ಪರಿವರ್ತಿಸಲು ಸಹಾಯಮಾಡುತ್ತದೆ.

ಸ್ಟ್ರಿಂಗ್ ಫಂಕ್ಷನ್ 

 (string.h) ಬಳಸಿ ಕೆಳಗಿರುವ ಸ್ಟ್ರಿಂಗ್ ಫಂಕ್ಷನ್ ಉಪಯೋಗಿಸಬಹುದು.
 strlen(s)- ಸ್ಟ್ರಿಂಗ್‍ನಲ್ಲಿರುವ ಅಕ್ಷರಗಳ ಸಂಖ್ಯೆಯನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
 strrev(s)-ಸ್ಟ್ರಿಂಗ್‍ನಲ್ಲಿರುವ ಅಕ್ಷರಗಳನ್ನು ರಿವರ್ಸ್ ಪದವಾಗಿ ಔಟ್ಪುಟ್ ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
 strupr(s)-ಸ್ಟ್ರಿಂಗ್‍‍‌ಅನ್ನು ಅಪ್ಪರ್ ಕೇಸ್ ಲೆಟರ್‍ಗೆ ಪರಿವರ್ತಿಸಲು ಸಹಾಯಮಾಡುತ್ತದೆ.
 strlwr(s)-ಸ್ಟ್ರಿಂಗ್‍‍‌ಅನ್ನು ಲೋವರ್ ಕೇಸ್ ಲೆಟರ್‍ಗೆ ಪರಿವರ್ತಿಸಲು ಸಹಾಯಮಾಡುತ್ತದೆ.

ಕಂಟ್ರೋಲ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್

ಕಂಟ್ರೋಲ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಬಳಸಿ ಇನ್‍ಸ್ಟ್ರಕ್ಷನ್ ಅನುಕ್ರಮ ಬದಲಾಯಿಸಬಹುದು.ಸಿ++(C++)ನಲ್ಲಿ ೨ ಕಂಟ್ರೋಲ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಇದೆ. 
 ಸೆಲೆಕ್ಷನ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್-ಇನ್‍ಸ್ಟ್ರಕ್ಷನನ್ನು ಕಂಡೀಶನ್ ಆಧಾರಿತದ ಮೇಲೆ ಎಸ್ಎಕ್ಯುಷನ್ ಮಾಡಲು ಸಹಾಯಮಾಡುತ್ತದೆ.ಸಿ++(C++)ನಲ್ಲಿ ೪ ಸೆಲೆಕ್ಷನ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಇದೆ.೧)ಇಫ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್  ೨)ಇಫ್ - ಎಲ್ಸ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್  ೩)ನೆಸ್ಟಡ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್  ೪)ಸ್ವಿಚ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ 
ಇಫ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ -ಎಕ್ಸಿಕ್ಯೂಟ್ ಮಾಡಬೇಕಾದ ಸ್ಟೇಟ್‍ಮೆಂಟ್‍ನ ಕಂಡೀಶನ್ ನಿರ್ಧರಿಸಲು ಇಫ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಬಳಸಲಾಗುತ್ತದೆ.ಇದನ್ನು "ಒನ್-ವೆ ಬ್ರ್ಯಾಂಚಿಂಗ್" ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
 ಇಫ್ - ಎಲ್ಸ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್-ಕಂಡೀಶನ್ ಟ್ರೂ ಆದರೆ ಒಂದು ಸೆಟ್ ಒಫ್ ಇನ್‍ಸ್ಟ್ರಕ್ಷನ್ ಇಲ್ಲದಿದ್ದರೆ ಬೇರೆ ಸೆಟ್ ಒಫ್ ಇನ್ಸ್ಟ್ರಕ್ಷನ ಎಕ್ಸಿಕ್ಯೂಟ್ ಮಾಡುತ್ತದ್ದೆ.ಇದನ್ನು "ಟೂ-ವೆ ಬ್ರ್ಯಾಂಚಿಂಗ್" ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
 ನೆಸ್ಟಡ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ - ಒಂದು ಇಫ್-ಎಲ್ಸ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಒಳಗೆ ಮತ್ತೊಂದು ಇಫ್-ಎಲ್ಸ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಸೇರಿಸಿದರೆ ಅದನ್ನು ನೆಸ್ಟಡ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
 ಸ್ವಿಚ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ - ಒಂದು ಕಂಡೀಶನ್‍ಗೆ ಹಲವು ಆಯ್ಕೆ ಇದ್ದರೆ ಅದನ್ನು ಸ್ವಿಚ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.
 ಇಟೆರೇಷನ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ - ಕಂಡೀಶನ್ ಎಸ್ಎಕ್ಯುಷನ್ ಪುನರಾವರ್ತಿಸಲು ಇಟೆರೇಷನ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಬಳಸುತ್ತೆವೆ.ಸಿ++(C++)ನಲ್ಲಿ ೩ ಇಟೆರೇಷನ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ ಇದೆ.
 "ವೈಲ್" ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ 
"ಡು-ವೈಲ್" ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್ 
"ಫಾರ್" ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್.

ಸಿ++(C++) ಪ್ರೋಗ್ರಾಮಿಂಗ್ ರಚನೆ

ಕಾಮೆಂಟ್ಸ್ ಸೆಕ್ಷನ್-ಪ್ರತಿ ವಿಭಾಗ ಮಾಡುತಿರುವ ಕಾರ್ಯಗಳ ಬಗ್ಗೆ ಕಾಮೆಂಟ್‍ಗಳನ್ನು ಬರೆಯಲು ಕಾಮೆಂಟ್ಸ್ ಸೆಕ್ಷನ್ ನಮಗೆ ಅವಕಾಶ ನೀಡುತ್ತದೆ.
ಲಿನ್ಕರ್ ಸೆಕ್ಷನ್- ಸಿ++(C++)ನಲ್ಲಿ ಮೊದಲು ಎಕ್ಸಿಕ್ಯೂಟ್ ಆಗುವ ಡೆಫಿನಿಷನ್‍ಗಳನ್ನು ಲಿನ್ಕರ್ ಸೆಕ್ಷನ್ ಎಂದು ಕರೆಯುತ್ತೆವೆ ಉದಾಹರಣೆಗೆ(#include<iostream.h>, #include<iomanip.h>, #include<iomanip.h>, #include<conio.h>). 
ಗ್ಲೋಬಲ್ ಡಿಕ್ಲೆರೇಷನ್ ಸೆಕ್ಷನ್-ಸಾಮಾನ್ಯವಾಗಿ ಈ ಭಾಗದಲ್ಲಿ ವೇರಿಯಬಲ್ ಡಿಕ್ಲೆರೇಷನ್ ಮಾಡಬಹುದು.
ಮೇನ್() ಫಂಕ್ಷನ್-ಪ್ರಮುಖವಾಗಿರುವ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಲಾಜಿಕ್ ಈ ಭಾಗದಲ್ಲಿ ಬರೆಯಬಹುದು.
ಬ್ರೆಸ್ಸ್("{}")-ಪ್ರೋಗ್ರಾಮ್‍ನ ಆರಂಭ ಮತ್ತು ಕೊನೆಯನ್ನು ಸೂಚಿಸುತ್ತದೆ.
ವೇರಿಯೇಬಲ್ ಡಿಕ್ಲೆರೇಷನ್ ಸೆಕ್ಷನ್- ಈ ಭಾಗದಲ್ಲಿ ವೇರಿಯಬಲ್ ಡಿಕ್ಲೆರೇಷನ್ ಮಾಡಬಹುದು.
ಎಸ್ಎಕ್ಯೂಟಬಲ್ ಸೆಕ್ಷನ್-ಇನ್‍ಪುಟ್ ಔಟ್‍ಪುಟ್ ಫಂಕ್ಷನ್, ಕಂಡೀಷನ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್, ಲೂಪಿಂಗ್ ಸ್ಟೇಟ್‍ಮೆಂಟ್ಸ್, ಮುಂತಾದ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅಂಶಗಳನ್ನು ಇಲ್ಲಿ ಬರೆಯಬಹುದು.

ಲೈಬ್ರರಿ 
ಸಿ++ ಸ್ಟಾಂಡರ್ಡ್ ಲೈಬ್ರರಿಯಲ್ಲಿ ಎರಡು ಭಾಗಗಳಿವೆ – (1) ಮೂಲ ಸಿ++ ಭಾಷೆಗೆ ಸಂಬಂಧಿಸಿದ ತಂತ್ರಾಂಶ ಮತ್ತು (2) ಸ್ಟಾಂಡರ್ಡ್ ಲೈಬ್ರರಿ, ಸ್ಟಾಂಡರ್ಡ್ ಲೈಬ್ರರಿಯಲ್ಲಿ ಸಾಧಾರಣವಾಗಿ ಉಪಯೋಗಿಸಲ್ಪಡುವ ಅನೇಕ ತಂತ್ರಾಂಶಗಳನ್ನು ನೀಡಲಾಗಿದೆ – ಉದಾ. ವೆಕ್ಟರ್, ಲಿಸ್ಟ್, ಮ್ಯಾಪ್, ಸೆಟ್, ಕ್ಯೂ, ಸ್ಟಾಕ್, ಟಪಲ್ ಮೊದಲಾದ  ಡೇಟಾ ಸ್ಟ್ರಕ್ಚರ್ಗಳು, ಫೈಂಡ್, ಫಾರ್ ಈಚ್, ಬೈನರಿ ಸರ್ಚ್, ರಾಂಡಮ್ ಷಫಲ್ ಮೊದಲಾದ ನಿಯೋಗಗಳು.  iostream ಎಂಬ ನಿಯೋಗ ಸಮುಚ್ಚಯದಲ್ಲಿ ಕಡತಗಳನ್ನು ಓದುವ/ಬರೆಯುವ ನಿಯೋಗಗಳಿವೆ. ಕಂಪ್ಯೂಟರ್ ಸ್ಮೃತಿಯ ನಿರ್ವಹಣೆಗಾಗಿ ಸ್ಮಾರ್ಟ್ ಪಾಯಿಂಟರ್ ಎಂಬ ವ್ಯವಸ್ಥೆ ಲಭ್ಯವಾಗಿದೆ. ಪದಗಳನ್ನು ಹುಡುಕಲು ಉಪಯೋಗವಾಗುವ ರೆಗ್ಯುಲರ್ ಎಕ್ಸ್ಪ್ರೆಷನ್ ಎಂಬ ನಿಯೋಗವಿದೆ. ತಂತ್ರಾಂಶವು ಓದುವ ವೇಗವನ್ನು ಹೆಚ್ಚಿಸಲು ಬಳಕೆಯಾಗುವ ಮಲ್ಟಿ ಥ್ರೆಡಿಂಗ್ ಎಂಬ ಲೈಬ್ರರಿ ಇದೆ. ಒಮ್ಮೆಗೆ ಒಂದು ಸ್ಮೃತಿಯನ್ನು ಒಂದೇ ನಿಯೋಗವು ಬಳಸಲು ಅನುಕೂಲವಾಗುವ “ಅಟಾಮಿಕ್ಸ್” ಲೈಬ್ರರಿ ಲಭ್ಯವಾಗಿದೆ. ಸಮಯದ ಮಾಪನಕ್ಕೆ ಅನುಕೂಲವಾದ ಲೈಬ್ರರಿ ನಿಯೋಗಗಳಿವೆ.

ವಿಮರ್ಶೆ 

ಸಿ++ ಭಾಷೆಯು ಸಾಕಷ್ಟು ಜನಪ್ರಿಯವಾದ ಭಾಷೆಯಾದರೂ ಅದನ್ನು ಕುರಿತು ಕೆಲವು ಟೀಕೆಗಳೂ ಇವೆ. ಲಿನಕ್ಸ್ ನಿರ್ವಹಣಾ ವ್ಯವಸ್ಥೆಯನ್ನು ರೂಪಿಸಿದ ಲೈನಸ್ ಟೋರ್ವಾಲ್ಡ್ಸ್, “ಓಪನ್ ಸೋರ್ಸ್” ಪ್ರತಿಪಾದಕ ರಿಚರ್ಡ್ ಸ್ಟಾಲ್ಮನ್  ಮತ್ತು “ಸಿ” ಹಾಗೂ “ಯೂನಿಕ್ಸ್” ಅಧ್ವರ್ಯುಗಳಲ್ಲಿ ಒಬ್ಬನಾದ ಕೆನ್ ಥಾಮ್ಸನ್ ಇವರೆಲ್ಲರೂ ಬೇರೆ ಬೇರೆ ಕಾರಣಗಳಿಗಾಗಿ ಸಿ++ ಭಾಷೆಯನ್ನು ಟೀಕಿಸಿದ್ದಾರೆ.  ಸಿ++ ಭಾಷೆಯಲ್ಲಿ ರಚಿತವಾದ ತಂತ್ರಾಂಶಗಳ ವೇಗ ಕಡಿಮೆ ಎಂಬುದು ಒಂದು ಟೀಕೆ. ಕಂಪ್ಯೂಟರ್ ಸ್ಮೃತಿಯನ್ನು ಬಳಸುವಾಗ ಬೇಕಾದ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಎಂಬ ತಂತ್ರಾಂಶ ಇಲ್ಲದೇ ಇರುವುದು ಇನ್ನೊಂದು ಟೀಕೆ.

ಸಿ++ ಭಾಷೆಯಲ್ಲಿರುವ ತೊಡಕುಗಳಿಂದ ಪಾರಾಗಲು D, Go Rust, Vala ಮೊದಲಾದ ಭಾಷೆಗಳನ್ನು ಹುಟ್ಟುಹಾಕಲಾಗಿದೆ.   some people suggest alternative languages newer than C++, such as D, Go, Rust and Vala.

ಉಲ್ಲೇಖಗಳು 

ಮಾಹಿತಿ ತಂತ್ರಜ್ಞಾನ