<?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[Eigene Buffer Klasse funtzt net]]></title><description><![CDATA[<p>Hi,</p>
<p>ich hab mir ne buffer klasse geschrieben für ein Chat Programm, aber sie funtzt net.</p>
<p>der code:</p>
<p>buffer.h:</p>
<pre><code class="language-cpp">#ifndef BUFFER
#define BUFFER

#define BUFFER_FULL -1
#define BUFFER_EMPTY °

#include &lt;string&gt;

using namespace std;

class buffer
{
  public:
  buffer();
  ~buffer();

  void write(string);
  string read();
  int GetLength() const;

  private:
  int getlatestfree() const;
  void delall();
  void dellast();

  string Buf[100];
  int Length;
};

#endif
</code></pre>
<p>buffer.cpp:</p>
<pre><code class="language-cpp">#include &quot;buffer.h&quot;

#include &lt;iostream&gt;
#include &lt;string&gt;

using namespace std;

buffer::buffer()
{
  delall();
}

buffer::~buffer()
{}

void buffer::write(string text)
{
  if(getlatestfree() != BUFFER_FULL)
  {
    Buf[getlatestfree()] = text;
    Length += 1;
  }
  else
  {
    std::cout &lt;&lt; &quot;BUFFER-FEHLER: Der Buffer ist foll! Versuchen sie es spaeter erneut!\n&quot;;
  }
}

string buffer::read()
{
  string buf;
  if(Buf[99] != &quot;&quot;)
  {
    buf = Buf[99];
    dellast();
    return buf;
  }
  else
  {
    return &quot;°&quot;;
  }
}

void buffer::dellast()
{
  for(int i = 99; i &gt; 99 - Length; i--)
  {
    if(i != 0)
    {
      Buf[i] = Buf[i-1];
    }
    else
    {
      Buf[0] = &quot;&quot;;
    }
  }
  Length -= 1;
}

int buffer::getlatestfree() const
{
  int i;
  for(i = 99; i &gt;= 0; i--)
  {
    if(Buf[i] == &quot;&quot;)
    {
      return i;
    }
  }
  return BUFFER_FULL;
}

void buffer::delall()
{
  for(int i = 0; i &lt; 100; i++)
  {
    Buf[i] = &quot;&quot;;
  }
  Length = 0;
}

int buffer::GetLength() const
{
  return Length;
}
</code></pre>
<p>Das Problem: ab und zu ist der buffer leer wo es nicht sein kann/sollte und wenn was drin ist, dann is auchnoch alles von der letzten nachricht drin.</p>
<p>z.B:</p>
<pre><code>Nachricht eins:          Hallo wie geht es dir?
Nachricht zwei(eingabe): Gut!
Nachricht zwei(ausgabe): Gut!o wie geht es dir?
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> Warum <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/212761/eigene-buffer-klasse-funtzt-net</link><generator>RSS for Node</generator><lastBuildDate>Wed, 14 Oct 2026 17:24:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/212761.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 10 May 2008 09:29:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eigene Buffer Klasse funtzt net on Sat, 10 May 2008 09:31:21 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich hab mir ne buffer klasse geschrieben für ein Chat Programm, aber sie funtzt net.</p>
<p>der code:</p>
<p>buffer.h:</p>
<pre><code class="language-cpp">#ifndef BUFFER
#define BUFFER

#define BUFFER_FULL -1
#define BUFFER_EMPTY °

#include &lt;string&gt;

using namespace std;

class buffer
{
  public:
  buffer();
  ~buffer();

  void write(string);
  string read();
  int GetLength() const;

  private:
  int getlatestfree() const;
  void delall();
  void dellast();

  string Buf[100];
  int Length;
};

#endif
</code></pre>
<p>buffer.cpp:</p>
<pre><code class="language-cpp">#include &quot;buffer.h&quot;

#include &lt;iostream&gt;
#include &lt;string&gt;

using namespace std;

buffer::buffer()
{
  delall();
}

buffer::~buffer()
{}

void buffer::write(string text)
{
  if(getlatestfree() != BUFFER_FULL)
  {
    Buf[getlatestfree()] = text;
    Length += 1;
  }
  else
  {
    std::cout &lt;&lt; &quot;BUFFER-FEHLER: Der Buffer ist foll! Versuchen sie es spaeter erneut!\n&quot;;
  }
}

string buffer::read()
{
  string buf;
  if(Buf[99] != &quot;&quot;)
  {
    buf = Buf[99];
    dellast();
    return buf;
  }
  else
  {
    return &quot;°&quot;;
  }
}

void buffer::dellast()
{
  for(int i = 99; i &gt; 99 - Length; i--)
  {
    if(i != 0)
    {
      Buf[i] = Buf[i-1];
    }
    else
    {
      Buf[0] = &quot;&quot;;
    }
  }
  Length -= 1;
}

int buffer::getlatestfree() const
{
  int i;
  for(i = 99; i &gt;= 0; i--)
  {
    if(Buf[i] == &quot;&quot;)
    {
      return i;
    }
  }
  return BUFFER_FULL;
}

void buffer::delall()
{
  for(int i = 0; i &lt; 100; i++)
  {
    Buf[i] = &quot;&quot;;
  }
  Length = 0;
}

int buffer::GetLength() const
{
  return Length;
}
</code></pre>
<p>Das Problem: ab und zu ist der buffer leer wo es nicht sein kann/sollte und wenn was drin ist, dann is auchnoch alles von der letzten nachricht drin.</p>
<p>z.B:</p>
<pre><code>Nachricht eins:          Hallo wie geht es dir?
Nachricht zwei(eingabe): Gut!
Nachricht zwei(ausgabe): Gut!o wie geht es dir?
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> Warum <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1506427</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1506427</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Sat, 10 May 2008 09:31:21 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Buffer Klasse funtzt net on Sat, 10 May 2008 09:36:18 GMT]]></title><description><![CDATA[<p>Geheimtipp: Verwende einen Debugger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1506431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1506431</guid><dc:creator><![CDATA[Achtung]]></dc:creator><pubDate>Sat, 10 May 2008 09:36:18 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Buffer Klasse funtzt net on Sat, 10 May 2008 09:39:55 GMT]]></title><description><![CDATA[<p>hab ich, aber ich finde das prob net</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1506432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1506432</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Sat, 10 May 2008 09:39:55 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Buffer Klasse funtzt net on Sat, 10 May 2008 10:39:47 GMT]]></title><description><![CDATA[<p>Ich denke mal es liegt daran, dass du dein Buffer nach Ausgabe deiner Message, nicht leerst <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1506460</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1506460</guid><dc:creator><![CDATA[T0bi]]></dc:creator><pubDate>Sat, 10 May 2008 10:39:47 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Buffer Klasse funtzt net on Sat, 10 May 2008 12:45:50 GMT]]></title><description><![CDATA[<p>eigentlich schon, wenn read() aufgerufen wird wird ja auch die funktion dellast() aufgerufen die den letzten mit dem vorletzten string überschreibt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1506521</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1506521</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Sat, 10 May 2008 12:45:50 GMT</pubDate></item><item><title><![CDATA[Reply to Eigene Buffer Klasse funtzt net on Sat, 10 May 2008 15:00:16 GMT]]></title><description><![CDATA[<p>ich hab das prob gelößt: es lag nicht am buffer sondern an ner variablen im haupt prog</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1506576</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1506576</guid><dc:creator><![CDATA[Yazoo]]></dc:creator><pubDate>Sat, 10 May 2008 15:00:16 GMT</pubDate></item></channel></rss>