Thread Hilfe zu Fehlermeldung C2440 (5 answers)
Opened by pktm at 2008-01-11 00:58

pktm
 2008-01-11 00:58
#104599 #104599
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!

Im Zuge eines c++-Kurses stehe ich vor folgender Aufgabe:
Erstellung einer String-Klasse, die einen Char-Vektor nimmt und daraus einen String macht.

Der Aufruf in der main()-Methode sieht so aus:
Code: (dl )
1
2
3
4
5
	char cv1[6];
cv1[0] = 'a';
cv1[1] = 'b';

String s2 = new String(cv1);


Der Konstruktor meiner String-Klasse sieht su aus:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
	String( char cv1[] )
{
init_from_char_vector(cv1);
}

void init_from_char_vector( char cv1[] )
{
int length = 0;

while( cv1[length] != 0 )
{
++length;
}

// wenn der Vektor zu lang ist wird eine Fehlermeldung erzeugt.
if( length > MAXSTRINGLENGTH ) {
//cout << "Fehler: Charvektor zu gross!" << "\n";
throw 1;
}

for(int i = 0; i < length; i++ )
{
internal_string[i] = cv1[i];
}
}


Ich bekomme aber eine Fehlermeldung:
Quote
1>...stringtest.cpp(21) : error C2440: 'Initialisierung': 'String *' kann nicht in 'String' konvertiert werden
1> Quelltyp konnte von keinem Konstruktor angenommen werden, oder die Überladungsauflösung des Konstruktors ist mehrdeutig


Hat wer Rat?

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )

View full thread Hilfe zu Fehlermeldung C2440