<?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[lib erstellen&#x2F;aufrufen]]></title><description><![CDATA[<p>heiho</p>
<p>ich hab hier verschiedene klassen die ich immer wieder verwende, da dacht ich mir, packste die in eine lib datei das ich nicht jedesmal alle cpp und h dateien kopieren muss</p>
<p>also erstma ein projekt erstellt und das auf static library gestellt - dateien hinzugefuegt und copiliert {debug und release}</p>
<p>nun ein anderes projekt erstellt um es zu testen</p>
<p>in den linker optionen die lib angegeben und compiliert ohne fehler<br />
will ich aber nu eine klasse aus der lib aufrufen heisst es das es unbekannt sei</p>
<p>auch wenn ich die *.lib datei umbenenne meckert der linker gar nicht das er die nicht finde</p>
<p>was mach ich falsch ?</p>
<p>Visual Studio 2005 Team Edition for Software Developers</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/172134/lib-erstellen-aufrufen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 17:13:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/172134.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 01 Feb 2007 17:38:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 17:38:18 GMT]]></title><description><![CDATA[<p>heiho</p>
<p>ich hab hier verschiedene klassen die ich immer wieder verwende, da dacht ich mir, packste die in eine lib datei das ich nicht jedesmal alle cpp und h dateien kopieren muss</p>
<p>also erstma ein projekt erstellt und das auf static library gestellt - dateien hinzugefuegt und copiliert {debug und release}</p>
<p>nun ein anderes projekt erstellt um es zu testen</p>
<p>in den linker optionen die lib angegeben und compiliert ohne fehler<br />
will ich aber nu eine klasse aus der lib aufrufen heisst es das es unbekannt sei</p>
<p>auch wenn ich die *.lib datei umbenenne meckert der linker gar nicht das er die nicht finde</p>
<p>was mach ich falsch ?</p>
<p>Visual Studio 2005 Team Edition for Software Developers</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221309</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Thu, 01 Feb 2007 17:38:18 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 17:56:39 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Hast du die dazugehörige Headerdatei mit den Deklarationen mit inkludiert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221319</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221319</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Thu, 01 Feb 2007 17:56:39 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 18:14:08 GMT]]></title><description><![CDATA[<p>ich habe in den projekt welches die lib erstellt eine *.h datei welches die ganzen klasse includiert<br />
aber ich kann aus dem lib_test projekt keine header aufrufen - immer unbekannt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221329</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221329</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Thu, 01 Feb 2007 18:14:08 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 18:18:25 GMT]]></title><description><![CDATA[<p>Wenn du die Klasse in einem anderen Projekt verwenden willst mußt du dort die lib deinem Projekt hinzufügen und die Hederdatei da inkludiern wo du die Klasse verwenden willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221332</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221332</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Thu, 01 Feb 2007 18:18:25 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 18:20:56 GMT]]></title><description><![CDATA[<p>ich versteh nicht - welche header - ich habe doch nur die *.lib datei</p>
<p>wie gesagt</p>
<p>ein projekt erstellt - da alle cpp und h der klasse reingeworfen - compiliert und die daraus resultierende lib will ich weiterverwenden, ich nahm an das in der lib dann alle klassen drinne sind die ich brauch</p>
<p>also muss ich doch irgendwie sachen aus der lib aufrufen koennen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221333</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221333</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Thu, 01 Feb 2007 18:20:56 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 18:41:09 GMT]]></title><description><![CDATA[<p>Du brauchst aber in dem anderen Projekt die Header, da dort die Deklarationen drin sind (damit der Compiler weiss, was es gibt) und die .lib, mit den Definitionen (damit der Linker das, von dem der Compiler weiss, dass es das gibt, auch findet).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221341</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221341</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 01 Feb 2007 18:41:09 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 18:48:21 GMT]]></title><description><![CDATA[<p>ach - also die lib beinhaltet NUR die definitionen ???<br />
des is doch aasch - da kann ich mir das mit der lib gleich spaaren</p>
<p>ich dacht das die lib die definitionen UND deklarationen beinhalten</p>
<p>{wenn ich die *.h auch kopier kann ich fehlerfrei compilieren und es benutzen}</p>
<p>//edit because peinliche tippfehler</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221345</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221345</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Thu, 01 Feb 2007 18:48:21 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 18:50:31 GMT]]></title><description><![CDATA[<p>Ja, aber Du brauchst den Quellcode der Implementierung nicht mehr. Und dass es eine Funktion &quot;foo&quot; gibt, die einen Parameter vom Typ int annimmt (bspw.), weiss der Benutzer Deiner Bibliothek mit oder ohne Header, denn sonst kann er die Funktion &quot;foo&quot; nicht benutzen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Es gibt auch Sprachen, wo die Deklarationen als Teil des Binärcode eingebettet werden und dann vom Compiler bzw. Tools ausgelesen werden können. Die .NET-Familie z.B., oder Java.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221348</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221348</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 01 Feb 2007 18:50:31 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Thu, 01 Feb 2007 18:58:36 GMT]]></title><description><![CDATA[<p>wie ist das bei dll files ? verhaelt es sich dort genauso ?</p>
<p>jetzt zZt geht es eigentlich nur darum das ich selber wenn ich meine sachen weiterverwenden will nicht lauter dateien jedesmal kopieren wollte sondern nur die eine lib</p>
<p>da ist mir grad beim schreiben ein einfall eingefalln - ich pack einfach alle klassen deklarationen {zusaetzlich} in eine einzelne datei und compiliere die lib</p>
<p>dann brauch ich in den anderen projekten nur die eine h und die lib einbinden und hab alle klassen</p>
<p>denk mal das das was nicht benutzt wird eh wegoptimiert wird beim release</p>
<p>dankoe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221353</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221353</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Thu, 01 Feb 2007 18:58:36 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Fri, 02 Feb 2007 09:12:44 GMT]]></title><description><![CDATA[<p>Ja, das ist bei dlls genau so.<br />
Wenn du alle Deklarationen in eine Headerdatei packst wird dein Projekt ganz schnell unübersichtlich. Lass das lieber. Pack alle notwendigen Headerdateien in ein spezielles verzeichnis (includes) und kopier das immer mit. So wird es auch bei allen größeren Bibliotheken gemacht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221567</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221567</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Fri, 02 Feb 2007 09:12:44 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Fri, 02 Feb 2007 09:28:09 GMT]]></title><description><![CDATA[<p>Eine LIB-Datei hat trotzdem vorteile. Z.B. kannst du vor dem Benutzer Klassen und Funktionen &quot;verstecken&quot;, in dem du ihm entsprechende Headers nicht mitlieferst. So kannst du ihm nur die für den Anwender wichtigen Headers mitschicken. Denn die Lib selbst braucht die Headers nicht. Wenn Du z.B. Klasse A und Klasse B hast, aber der Anwender immer nur A benutzt, und A benutzt B, lieferst du nur die Header für A aus. Sobald der Anwender natürlich B braucht, muß die Header wieder mit.</p>
<p>Wenn man nur Headers und CPPs &quot;ausliefert&quot;, bekommt der Anwender immer alle Klassen und Funktionen zu Gesicht, obwohl er vielleicht nur 10% davon direkt benutzt. Klar, ist vielleicht nicht schlimm, aber kann den Anwender auch unnötig verwirren, obwohl er das nicht bräuchte.</p>
<p>Zur Optimierung: ja, der MSVC optimiert alles weg, beim verlinken der EXE. Ich habe z.B. eine statische Lib, die ist ca. 700 KB groß. Aber wenn ich nur zwei drei Dinge daraus brauche, ist meine EXE am Ende trotzdem nur 64 KB groß.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221575</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221575</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Fri, 02 Feb 2007 09:28:09 GMT</pubDate></item><item><title><![CDATA[Reply to lib erstellen&#x2F;aufrufen on Fri, 02 Feb 2007 09:58:44 GMT]]></title><description><![CDATA[<p>aaah, vielen dank {=</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221586</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221586</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Fri, 02 Feb 2007 09:58:44 GMT</pubDate></item></channel></rss>