Я новичок в концепциях С++ ООП. Проблема, с которой я сталкиваюсь в настоящее время, связана с объявлением строки в функции получения и установки. Я использую eclipse IDE, и я получаю сообщение об ошибке
error: cannot convert 'Student::getname' from type 'std::__cxx11::string (Student::)() {aka std::__cxx11::basic_string<char> (Student::)()}' to type 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}'
return getname;
Код выглядит следующим образом:
#include<iostream>
#include<string.h>
using namespace std;
class Student
{
private:
int rollno;
string name;
string school;
public:
void setrollno(int i)
{
rollno =i;
}
void setname(string n)
{
name =n;
}
void setschool(string s)
{
school =s;
}
int getrollno()
{
return rollno;
}
string getname()
{
return getname;
}
string getschool()
{
return school;
}
};
int main()
{
Student A;
A.setrollno(3);
cout << A.getrollno();
A.setname("vinod");
cout << A.getname();
A.setschool("carmel");
cout << A.getschool();
}
Может ли кто-нибудь сказать мне, в чем проблема?
return getname;
Это то, что вы хотели? - person Nathan Cooper   schedule 22.02.2016return name;
ты это и имел в виду? Код вашего комментария точно такой же, как и в вопросе;) - person Sebastian Mach   schedule 22.02.2016#include<string.h>
на#include<string>
.string.h
объявляет только c-функции для манипулирования массивом символов. - person πάντα ῥεῖ   schedule 22.02.2016