<?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[Problem: Kompiler sagt: Mehrdeutiger Aufruf einer überladenen Funktion]]></title><description><![CDATA[<p>Hallo,</p>
<p>haben folgendes Programm geschrieben</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;
#include &lt;algorithm&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;iomanip&gt;
#include &lt;vector&gt;
#include &lt;fstream&gt;

using namespace std;

void datei_lesen(ifstream&amp;, vector&lt;string&gt;&amp;);
void maxzeilenlaenge(string::size_type&amp;, vector&lt;string&gt;&amp;);
void ausgabe(string::size_type&amp;, string::size_type&amp;, vector&lt;string&gt;&amp;);

void datei_lesen(ifstream&amp; datei_einlesen, vector&lt;string&gt;&amp; datei) {

	if (!datei_einlesen) {
		cout &lt;&lt; &quot;Datei kann nicht geoeffnet werden, vielleicht stimmt der Dateipfad oder Dateiname nicht \n&quot;;
	}
	else {
    string zeile;

	while (getline (datei_einlesen, zeile))
		datei.push_back(zeile);
		}
	}

void maxzeilenlaenge(string::size_type&amp; maxstring, vector&lt;string&gt;&amp; datei){
	 maxstring = 0;
	 vector&lt;double&gt;::size_type groesse = datei.size();
	for(vector&lt;string&gt;::size_type i = 0; i != groesse; ++i) {
     maxstring = max(maxstring, datei[i].size());
	 }
}

void ausgabe(string::size_type&amp; maxstringlaenge, string::size_type&amp; leerzeichen, vector&lt;string&gt;datei) {
    vector&lt;double&gt;::size_type groesse = datei.size();
    string::size_type zeilen, spalten;
	spalten = (maxstringlaenge + (1 + leerzeichen) * 2);

	zeilen = (groesse + (1 + leerzeichen) * 2);

	for(vector&lt;string&gt;::size_type z = 0; z != zeilen; ++z) {
		string::size_type s = 0;
		while (s != spalten) {

			if(z == 0 || z == (zeilen - 1) ){
				cout &lt;&lt; &quot;*&quot;;
				++s;
			} else {

				if ((z != 0 &amp;&amp; z &lt;= leerzeichen) || (z != zeilen -1 &amp;&amp; z &gt;= (zeilen - leerzeichen - 1))) {
					if(s == 0 || s == (spalten -1)) {
						cout &lt;&lt; &quot;*&quot;;
						++s;
                        } else {
						cout &lt;&lt; &quot; &quot;;
						++s;
					    }
				} else {
					if(s == 0 || s == (spalten)-1){
						cout &lt;&lt; &quot;*&quot;;
						++s;
					} else {
						string::size_type leerz_vortextanzahl, leerz_nachtextanzahl;

						leerz_vortextanzahl = ((spalten - 2) - datei[z - 1 - leerzeichen].size())/2;
						leerz_nachtextanzahl =((spalten - 2) - datei[z - 1 - leerzeichen].size()-leerz_vortextanzahl);
						string leer_vor(leerz_vortextanzahl,  ' ');
						string leer_nach(leerz_nachtextanzahl, ' ');
						string stringzeile = leer_vor + datei[z - 1 - leerzeichen] + leer_nach;
						cout &lt;&lt; stringzeile;
						s += stringzeile.size();		
					  }
				    }
				}

		}

		cout &lt;&lt; endl;
	    }
}
int main()
{
	vector&lt;string&gt; datei;
	string dateiname;
	string::size_type maxstringlaeng = 0;

	cout &lt;&lt; &quot;Bitte geben Sie das Verzeichnis und den Dateinamen ein: &quot;;
	cin &gt;&gt; dateiname;

	ifstream datei_einlesen(dateiname.c_str());

	datei_lesen(datei_einlesen, datei);
	maxzeilenlaenge(maxstringlaeng, datei);

   // vector&lt;double&gt;::size_type groesse = datei.size();	

	string::size_type leerzeichen;
	leerzeichen = 3;

	ausgabe(maxstringlaeng, leerzeichen, datei);

    }
</code></pre>
<p>Find den Fehler nicht: Kompiler sagt, Mehrdeutiger Aufruf einer überladenen Funktion, aber ich hab gar keine Funktion überladen oder doch?</p>
<p>Hoffe einer findet den Fehler, hab zwar ne Programmversion wo alles funzt aber dann ist hab ich die Ausgabe im main Programm und nicht in eine Funktion gepackt</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/169785/problem-kompiler-sagt-mehrdeutiger-aufruf-einer-überladenen-funktion</link><generator>RSS for Node</generator><lastBuildDate>Wed, 16 Sep 2026 20:32:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/169785.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 08 Jan 2007 20:42:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem: Kompiler sagt: Mehrdeutiger Aufruf einer überladenen Funktion on Mon, 08 Jan 2007 20:44:12 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>haben folgendes Programm geschrieben</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;
#include &lt;algorithm&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;iomanip&gt;
#include &lt;vector&gt;
#include &lt;fstream&gt;

using namespace std;

void datei_lesen(ifstream&amp;, vector&lt;string&gt;&amp;);
void maxzeilenlaenge(string::size_type&amp;, vector&lt;string&gt;&amp;);
void ausgabe(string::size_type&amp;, string::size_type&amp;, vector&lt;string&gt;&amp;);

void datei_lesen(ifstream&amp; datei_einlesen, vector&lt;string&gt;&amp; datei) {

	if (!datei_einlesen) {
		cout &lt;&lt; &quot;Datei kann nicht geoeffnet werden, vielleicht stimmt der Dateipfad oder Dateiname nicht \n&quot;;
	}
	else {
    string zeile;

	while (getline (datei_einlesen, zeile))
		datei.push_back(zeile);
		}
	}

void maxzeilenlaenge(string::size_type&amp; maxstring, vector&lt;string&gt;&amp; datei){
	 maxstring = 0;
	 vector&lt;double&gt;::size_type groesse = datei.size();
	for(vector&lt;string&gt;::size_type i = 0; i != groesse; ++i) {
     maxstring = max(maxstring, datei[i].size());
	 }
}

void ausgabe(string::size_type&amp; maxstringlaenge, string::size_type&amp; leerzeichen, vector&lt;string&gt;datei) {
    vector&lt;double&gt;::size_type groesse = datei.size();
    string::size_type zeilen, spalten;
	spalten = (maxstringlaenge + (1 + leerzeichen) * 2);

	zeilen = (groesse + (1 + leerzeichen) * 2);

	for(vector&lt;string&gt;::size_type z = 0; z != zeilen; ++z) {
		string::size_type s = 0;
		while (s != spalten) {

			if(z == 0 || z == (zeilen - 1) ){
				cout &lt;&lt; &quot;*&quot;;
				++s;
			} else {

				if ((z != 0 &amp;&amp; z &lt;= leerzeichen) || (z != zeilen -1 &amp;&amp; z &gt;= (zeilen - leerzeichen - 1))) {
					if(s == 0 || s == (spalten -1)) {
						cout &lt;&lt; &quot;*&quot;;
						++s;
                        } else {
						cout &lt;&lt; &quot; &quot;;
						++s;
					    }
				} else {
					if(s == 0 || s == (spalten)-1){
						cout &lt;&lt; &quot;*&quot;;
						++s;
					} else {
						string::size_type leerz_vortextanzahl, leerz_nachtextanzahl;

						leerz_vortextanzahl = ((spalten - 2) - datei[z - 1 - leerzeichen].size())/2;
						leerz_nachtextanzahl =((spalten - 2) - datei[z - 1 - leerzeichen].size()-leerz_vortextanzahl);
						string leer_vor(leerz_vortextanzahl,  ' ');
						string leer_nach(leerz_nachtextanzahl, ' ');
						string stringzeile = leer_vor + datei[z - 1 - leerzeichen] + leer_nach;
						cout &lt;&lt; stringzeile;
						s += stringzeile.size();		
					  }
				    }
				}

		}

		cout &lt;&lt; endl;
	    }
}
int main()
{
	vector&lt;string&gt; datei;
	string dateiname;
	string::size_type maxstringlaeng = 0;

	cout &lt;&lt; &quot;Bitte geben Sie das Verzeichnis und den Dateinamen ein: &quot;;
	cin &gt;&gt; dateiname;

	ifstream datei_einlesen(dateiname.c_str());

	datei_lesen(datei_einlesen, datei);
	maxzeilenlaenge(maxstringlaeng, datei);

   // vector&lt;double&gt;::size_type groesse = datei.size();	

	string::size_type leerzeichen;
	leerzeichen = 3;

	ausgabe(maxstringlaeng, leerzeichen, datei);

    }
</code></pre>
<p>Find den Fehler nicht: Kompiler sagt, Mehrdeutiger Aufruf einer überladenen Funktion, aber ich hab gar keine Funktion überladen oder doch?</p>
<p>Hoffe einer findet den Fehler, hab zwar ne Programmversion wo alles funzt aber dann ist hab ich die Ausgabe im main Programm und nicht in eine Funktion gepackt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1206023</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1206023</guid><dc:creator><![CDATA[Wandiii]]></dc:creator><pubDate>Mon, 08 Jan 2007 20:44:12 GMT</pubDate></item><item><title><![CDATA[Reply to Problem: Kompiler sagt: Mehrdeutiger Aufruf einer überladenen Funktion on Mon, 08 Jan 2007 20:45:49 GMT]]></title><description><![CDATA[<p>Schön. Und? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
<p>Tipp: Bei der Definition von ausgabe fehlt ein &amp;, und diese Info gibts jetzt auch nur weil ichs zufällig direkt gesehen habe.<br />
Tipp2: Nächstes Mal bitte mindestens ne Zeilenangabe wo der Fehler auftritt, besser die komplette Fehlermeldung AUF ENGLISCH.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1206025</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1206025</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Mon, 08 Jan 2007 20:45:49 GMT</pubDate></item><item><title><![CDATA[Reply to Problem: Kompiler sagt: Mehrdeutiger Aufruf einer überladenen Funktion on Mon, 08 Jan 2007 21:02:44 GMT]]></title><description><![CDATA[<p>ja sorry ist mir grad aufgefallen, dass ich das net mitgepostet habe, sorry <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1206034</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1206034</guid><dc:creator><![CDATA[Wandiii]]></dc:creator><pubDate>Mon, 08 Jan 2007 21:02:44 GMT</pubDate></item></channel></rss>