{"id":1639,"date":"2022-07-19T07:20:05","date_gmt":"2022-07-19T07:20:05","guid":{"rendered":"https:\/\/blog.amt.in\/?p=1639"},"modified":"2022-07-19T07:20:05","modified_gmt":"2022-07-19T07:20:05","slug":"introduction-to-c","status":"publish","type":"post","link":"https:\/\/blog.amt.in\/index.php\/2022\/07\/19\/introduction-to-c\/","title":{"rendered":"Introduction to C++"},"content":{"rendered":"<p>C++\u00c2\u00a0\u00c2\u00a0is a\u00c2\u00a0general-purpose programming language. It has\u00c2\u00a0imperative,\u00c2\u00a0object oriented\u00c2\u00a0and\u00c2\u00a0generic\u00c2\u00a0programming features, while also providing facilities for\u00c2\u00a0low-level\u00c2\u00a0memory\u00c2\u00a0manipulation.<\/p>\n<p>It was designed with a bias toward\u00c2\u00a0system programming\u00c2\u00a0and\u00c2\u00a0embedded, resource-constrained and large systems, with\u00c2\u00a0performance, efficiency and flexibility of use as its design highlights.\u00c2\u00a0C++ has also been found useful in many other contexts, with key strengths being software infrastructure and resource-constrained applications,\u00c2\u00a0including\u00c2\u00a0desktop applications, servers (e.g.\u00c2\u00a0e-commerce,\u00c2\u00a0Web search\u00c2\u00a0or\u00c2\u00a0SQL\u00c2\u00a0servers), and performance-critical applications (e.g.\u00c2\u00a0telephone switches\u00c2\u00a0or\u00c2\u00a0space probes).\u00c2\u00a0C++ is a\u00c2\u00a0compiled language, with implementations of it available on many platforms. Many vendors provide\u00c2\u00a0C++ compilers, including the\u00c2\u00a0Free Software Foundation,\u00c2\u00a0Microsoft,\u00c2\u00a0Intel, and\u00c2\u00a0IBM.<\/p>\n<p>C++ is standardized by the\u00c2\u00a0International Organization for Standardization\u00c2\u00a0(ISO), with the latest standard version ratified and published by ISO in December 2017 as\u00c2\u00a0ISO\/IEC 14882:2017.\u00c2\u00a0The C++ programming language was initially standardized in 1998 as\u00c2\u00a0ISO\/IEC 14882:1998, which was then amended by the\u00c2\u00a0C++03,\u00c2\u00a0C++11\u00c2\u00a0and\u00c2\u00a0C++14\u00c2\u00a0standards. The current\u00c2\u00a0C++17\u00c2\u00a0standard supersedes these with\u00c2\u00a0new features\u00c2\u00a0and an enlarged\u00c2\u00a0standard library. Before the initial standardization in 1998, C++ was developed by\u00c2\u00a0Bjarne Stroustrup\u00c2\u00a0at\u00c2\u00a0Bell Labs\u00c2\u00a0since 1979, as an extension of the\u00c2\u00a0C language\u00c2\u00a0as he wanted an efficient and flexible language similar to C, which also provided high-level features for program organization.\u00c2\u00a0C++20\u00c2\u00a0is the next planned standard thereafter.<\/p>\n<p>Many other programming languages have been influenced by C++, including\u00c2\u00a0C#,\u00c2\u00a0D,\u00c2\u00a0Java, and newer versions of C.<\/p>\n<p>Throughout C++&#8217;s life, its development and evolution has been guided by a set of principles:<\/p>\n<ul>\n<li>It must be driven by actual problems and its features should be useful immediately in real world programs.<\/li>\n<li>Every feature should be implementable (with a reasonably obvious way to do so).<\/li>\n<li>Programmers should be free to pick their own programming style, and that style should be fully supported by C++.<\/li>\n<li>Allowing a useful feature is more important than preventing every possible misuse of C++.<\/li>\n<li>It should provide facilities for organising programs into well-defined separate parts, and provide facilities for combining separately developed parts.<\/li>\n<li>No implicit violations of the\u00c2\u00a0type system\u00c2\u00a0(but allow explicit violations; that is, those explicitly requested by the programmer).<\/li>\n<li>User-created types need to have the same support and performance as built-in types.<\/li>\n<li>Unused features should not negatively impact created executables (e.g. in lower performance).<\/li>\n<li>There should be no language beneath C++ (except\u00c2\u00a0assembly language).<\/li>\n<li>C++ should work alongside other existing\u00c2\u00a0programming languages, rather than fostering its own separate and incompatible\u00c2\u00a0programming environment.<\/li>\n<li>If the programmer&#8217;s intent is unknown, allow the programmer to specify it by providing manual control.<\/li>\n<\/ul>\n<p>The above is a brief about C++. Watch this space for more updates on the latest trends in Technology.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>C++\u00c2\u00a0\u00c2\u00a0is a\u00c2\u00a0general-purpose programming language. It<\/p>\n","protected":false},"author":1,"featured_media":1640,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[215,154,7],"tags":[216,156,18],"class_list":["post-1639","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-c","category-programming-language","category-techtrends","tag-c","tag-programming-language","tag-technology"],"_links":{"self":[{"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/posts\/1639","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/comments?post=1639"}],"version-history":[{"count":1,"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/posts\/1639\/revisions"}],"predecessor-version":[{"id":1641,"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/posts\/1639\/revisions\/1641"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/media\/1640"}],"wp:attachment":[{"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/media?parent=1639"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/categories?post=1639"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.amt.in\/index.php\/wp-json\/wp\/v2\/tags?post=1639"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}