Code:
#include <fstream.h>
#include <iostream.h>
class string
{
public:
char *a;
int size;
string()
{
//int i;
size=0;
a=(char*)malloc(sizeof(char)*0);
}
string(const string& x)
{
int i;
size=x.size;
a=(char*)malloc(sizeof(char)*size);
for(i=0;i<size;i++) a[i]=x.a[i];
}
~string()
{
free(a);
}
string operator = (string& x)
{
int i;
size=x.size;
a=(char*)realloc(a,sizeof(char)*size);
for(i=0; i<size; i++) a[i]=x.a[i];
return (*this);
}
string operator+=(const char& y)
{
string s;
int i;
s.a=(char*)realloc(s.a,sizeof(char)*(size+1));
for(i=0;i<size;i++) s.a[i]=a[i];
s.a[size]=y;
s.size=size+1;
return s;
}
string operator+(const char& x)
{
string s(*this);
s+=x;
return s;
}
int main()
{
char ak='a';
string sql,sql2;
// sql=sql2+='a';
sql=sql2+ak;
//sql2='b';
//sql='a';
return 0;
}
#include <fstream.h>
#include <iostream.h>
class string
{
public:
char *a;
int size;
string()
{
//int i;
size=0;
a=(char*)malloc(sizeof(char)*0);
}
string(const string& x)
{
int i;
size=x.size;
a=(char*)malloc(sizeof(char)*size);
for(i=0;i<size;i++) a[i]=x.a[i];
}
~string()
{
free(a);
}
string operator = (string& x)
{
int i;
size=x.size;
a=(char*)realloc(a,sizeof(char)*size);
for(i=0; i<size; i++) a[i]=x.a[i];
return (*this);
}
string operator+=(const char& y)
{
string s;
int i;
s.a=(char*)realloc(s.a,sizeof(char)*(size+1));
for(i=0;i<size;i++) s.a[i]=a[i];
s.a[size]=y;
s.size=size+1;
return s;
}
string operator+(const char& x)
{
string s(*this);
s+=x;
return s;
}
int main()
{
char ak='a';
string sql,sql2;
// sql=sql2+='a';
sql=sql2+ak;
//sql2='b';
//sql='a';
return 0;
}
i izbacuje mi gresku u main
Code:
string.cpp: In function `int main()':
string.cpp:70: error: no match for 'operator=' in 'sql =
string::operator+(const char&)((&ak))'
string.cpp:32: error: candidates are: string string::operator=(string&)
string.cpp: In function `int main()':
string.cpp:70: error: no match for 'operator=' in 'sql =
string::operator+(const char&)((&ak))'
string.cpp:32: error: candidates are: string string::operator=(string&)
Davno sam pisao operatore a ovo mi sad hitno treba a razbijam se ne mogu da provalim gresku jer je verovatno previse ocigledna