<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[friend class Problem]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe eine Art abstrakte Factory Basisklasse Base. Davon habe ich jetzt 2 konkrete Subklassen A und B.<br />
Base hat create Methoden wie z.B: virtual Foo* createFoo() = 0; In A und B habe ich diese Methode dann implementiert.<br />
Das Problem: Ich will, dass NUR von Base abgeleitete Klassen Foos erzeugen können, sprich der Ctor von Foo soll private sein. Ich wollte erst in die Deklaration von Foo ein friend class Base machen, aber das friend vererbt sich ja nicht an A und B, sprich A und B können keine Foo erzeugen.</p>
<p>Wie mach ich das, dass NUR von Base abgeleitete Klassen Foos erzeugen können?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/299194/friend-class-problem</link><generator>RSS for Node</generator><lastBuildDate>Thu, 13 Aug 2026 10:48:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/299194.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 05 Feb 2012 12:46:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to friend class Problem on Sun, 05 Feb 2012 12:46:06 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich habe eine Art abstrakte Factory Basisklasse Base. Davon habe ich jetzt 2 konkrete Subklassen A und B.<br />
Base hat create Methoden wie z.B: virtual Foo* createFoo() = 0; In A und B habe ich diese Methode dann implementiert.<br />
Das Problem: Ich will, dass NUR von Base abgeleitete Klassen Foos erzeugen können, sprich der Ctor von Foo soll private sein. Ich wollte erst in die Deklaration von Foo ein friend class Base machen, aber das friend vererbt sich ja nicht an A und B, sprich A und B können keine Foo erzeugen.</p>
<p>Wie mach ich das, dass NUR von Base abgeleitete Klassen Foos erzeugen können?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2177146</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2177146</guid><dc:creator><![CDATA[friend++]]></dc:creator><pubDate>Sun, 05 Feb 2012 12:46:06 GMT</pubDate></item></channel></rss>