<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>C-C++ Programming Encyclopedia &#187; C++</title>
	<atom:link href="http://www.c-cplusplus.com/category/cplusplus/feed" rel="self" type="application/rss+xml" />
	<link>http://www.c-cplusplus.com</link>
	<description>Learn C Programming - C++ Tutorials &#124; Code Snippets &#124; FAQs</description>
	<lastBuildDate>Tue, 03 Jan 2012 22:19:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Top Reasons to Try CPlusPlus</title>
		<link>http://www.c-cplusplus.com/reasons-to-try-cplusplus</link>
		<comments>http://www.c-cplusplus.com/reasons-to-try-cplusplus#comments</comments>
		<pubDate>Mon, 14 Mar 2011 19:55:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Top Reasons to Try CPlusPlus]]></category>

		<guid isPermaLink="false">http://www.c-cplusplus.com/?p=287</guid>
		<description><![CDATA[C++ is one of the first programming languages to bring in the Object Oriented Programming concepts. The Cplusplus language is a very fast programming language, which is not only very compatible with most of the hardware but also capable of executing on various platforms like Linux and Windows OS. C++ is a Mid-Level Programming language [...]]]></description>
			<content:encoded><![CDATA[<p>C++ is one of the first programming languages to bring in the Object Oriented Programming concepts. The <a href="http://www.c-cplusplus.com/category/cplusplus">Cplusplus language</a> is a very fast programming language, which is not only very compatible with most of the hardware but also capable of executing on various platforms like Linux and <a href="http://www.latest-technews.com/category/windows">Windows OS</a>.<br />
<span id="more-287"></span><br />
C++ is a Mid-Level Programming language due to its capability of being powerful on hardware and having features of high level language.<br />
<br />
C++ has the features of both high level and low level programming languages. The language is typed statically in a free form way. The language is multi paradigm based, and is interpreted but compiled, which makes it fast while execution.<br />
<br />
This is a general purpose programming language supporting both command line interface and Graphical User Interface.<br />
<br />
The <a href="http://www.c-cplusplus.com">top reasons to try Cplusplus</a> are as follows -<br />
•	Easy programming approach<br />
•	Object Oriented enabled<br />
•	Have features of High Level Language<br />
•	Is powerful like Low Level Language<br />
•	Most operating systems are programmed using C++<br />
•	Supports other programming languages<br />
•	Easily integrated with other programming languages<br />
•	Supports Graphical User Interface Programming<br />
•	Also capable of Command Line Interface programming<br />
•	Good market value<br />
•	Great career opportunities for C++ Developers<br />
•	Millions of libraries available to aid programming<br />
•	Good for programming device drivers<br />
•	Most of the games programmed today use C++ programming language as its core<br />
•	Tons of free and proprietary compilers are available in the market<br />
•	Top notch companies like Microsoft, Intel and IBM endorse  C++ programming language</p>
]]></content:encoded>
			<wfw:commentRss>http://www.c-cplusplus.com/reasons-to-try-cplusplus/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C++ Virtual Destructor</title>
		<link>http://www.c-cplusplus.com/c-virtual-destructor</link>
		<comments>http://www.c-cplusplus.com/c-virtual-destructor#comments</comments>
		<pubDate>Fri, 11 Jun 2010 08:31:06 +0000</pubDate>
		<dc:creator>Nanya</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[C++ Virtual Destructor]]></category>

		<guid isPermaLink="false">http://www.c-cplusplus.com/?p=13</guid>
		<description><![CDATA[All base classes should have a virtual destructor . If the class should be abstract (you want to prevent instantiating it) but it doesn&#8217;t happen to have any other pure virtual functions, a common technique to make the destructor pure virtual: // file b.h class B { public: /*&#8230;other stuff&#8230;*/ virtual ~B() = 0; // [...]]]></description>
			<content:encoded><![CDATA[<p>All base classes should have a <a href="http://www.c-cplusplus.com">virtual destructor </a>. If the class should be abstract (you want to prevent instantiating it) but it doesn&#8217;t happen to have any other pure virtual functions, a common technique to make the destructor pure virtual:<br />
<span id="more-13"></span><br />
// file b.h   </p>
<p> class B {    </p>
<p> public: /*&#8230;other stuff&#8230;*/       </p>
<p> virtual ~B() = 0; // pure virtual dtor<br />
<br />
};<br />
<br />
Of course, any derived class&#8217; destructor must call the base class&#8217; destructor, and so the destructor must still be defined (even if it&#8217;s empty):<br />
<br />
// file b.cpp<br />
<br />
B::~B() { /* possibly empty */ }<br />
<br />
If this definition were not supplied, you could still derive classes from B but they could never be instantiated, which isn&#8217;t particularly useful. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.c-cplusplus.com/c-virtual-destructor/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C++ Pure Virtual Function Explained</title>
		<link>http://www.c-cplusplus.com/c-pure-virtual-function-explained</link>
		<comments>http://www.c-cplusplus.com/c-pure-virtual-function-explained#comments</comments>
		<pubDate>Thu, 10 Jun 2010 20:27:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[C++ Pure Virtual Function]]></category>

		<guid isPermaLink="false">http://www.c-cplusplus.com/?p=4</guid>
		<description><![CDATA[A C++ pure virtual function is a virtual function that you want to force derived classes to override. If a class has any non-overridden pure virtuals, it is an &#8220;abstract class&#8221; and you can&#8217;t create objects of that type. How many pure virtual functions can an abstract class have? It is pretty common to be [...]]]></description>
			<content:encoded><![CDATA[<p>A <strong><a href="http://www.c-cplusplus.com">C++ pure virtual function</a></strong> is a virtual function that you want to force derived classes to override. If a class has any non-overridden pure virtuals, it is an &#8220;abstract class&#8221; and you can&#8217;t create objects of that type.<br />
<span id="more-4"></span></p>
<h2> How many pure virtual functions can an abstract class have? </h2>
<p>
It is pretty common to be confused as to how many pure virtual functions can an abstract class have &#8211; well, the answer is <strong>zero</strong>; here are few simple examples of pure virtual function in c++.<br />
</p>
<div style="display:block;float:right;padding:5px;">
<script type="text/javascript"><!--
google_ad_client = "pub-9680100702980837";
/* big_sq_red */
google_ad_slot = "4937024846";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script><br />
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div>
<p> class AbstractClass {<br />
    public:<br />
        // declare a pure virtual function:<br />
        // this class is now abstract<br />
        virtual void f(int) = 0;<br />
    };<br />
 <br />
    class StillAbstract : public AbstractClass {<br />
        // does not override f(int),<br />
        // so this class is still abstract<br />
    };<br />
  <br />
    class Concrete : public StillAbstract {<br />
    public:<br />
        // finally overrides f(int),<br />
        // so this class is concrete<br />
        void f(int) { /*&#8230;*/ }<br />
    };<br />
  <br />
    AbstractClass a;    // error, abstract class<br />
    StillAbstract b;    // error, abstract class<br />
    Concrete      c;    // ok, concrete class<br /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.c-cplusplus.com/c-pure-virtual-function-explained/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

