alirah84
سه شنبه 30 آبان 1391, 00:00 صبح
سلام
دوستان من این کد رو نوشتم ولی 3 نوع ارور مختلف میده .اگه راهنمایی کنید ممنون میشم.
Error 2 error C2248: 'Student::ave' : cannot access private member declared in class 'Student' c:\users\hossein\documents\visual studio 10\projects\ad\ad\hgd.cpp 35
Error 1 error C2660: 'sort' : function does not take 1 arguments c:\users\hossein\documents\visual studio 10\projects\ad\ad\hgd.cpp 25
11 IntelliSense: member "Student::ave" (declared at line 7) is inaccessible c:\users\hossein\documents\visual studio 10\projects\ad\ad\hgd.cpp 35
#include <iostream>
#include <string>
using namespace std;
class Student
{
char name[20];
float ave;
public:
void input();
friend void sort();
};
void Student:: input()
{
cin.get(name,20);
cin>>ave;
}
int main()
{
Student *p;
p=new Student[10];
for (int i=0;i<10;i++)
{
(p+i)->input();
}
sort(p);
}
void sort(Student *p)
{
float temp;
for (int i=0;i<10;i++)
{
for (int j=0;j<9;j++)
{
if ( (p+i)->ave > (p+i+1)->ave )
{
temp=(p+i)->ave;
(p+i)->ave=(p+i+1)->ave;
(p+i+1)->ave=temp;
}
}
}
for (int i=0;i<10;i++)
{
cout<<"Student "<<i+1<<":"<<(p+i)->name[20]<<endl;
cout<<(p+i)->ave;
}
}
دوستان من این کد رو نوشتم ولی 3 نوع ارور مختلف میده .اگه راهنمایی کنید ممنون میشم.
Error 2 error C2248: 'Student::ave' : cannot access private member declared in class 'Student' c:\users\hossein\documents\visual studio 10\projects\ad\ad\hgd.cpp 35
Error 1 error C2660: 'sort' : function does not take 1 arguments c:\users\hossein\documents\visual studio 10\projects\ad\ad\hgd.cpp 25
11 IntelliSense: member "Student::ave" (declared at line 7) is inaccessible c:\users\hossein\documents\visual studio 10\projects\ad\ad\hgd.cpp 35
#include <iostream>
#include <string>
using namespace std;
class Student
{
char name[20];
float ave;
public:
void input();
friend void sort();
};
void Student:: input()
{
cin.get(name,20);
cin>>ave;
}
int main()
{
Student *p;
p=new Student[10];
for (int i=0;i<10;i++)
{
(p+i)->input();
}
sort(p);
}
void sort(Student *p)
{
float temp;
for (int i=0;i<10;i++)
{
for (int j=0;j<9;j++)
{
if ( (p+i)->ave > (p+i+1)->ave )
{
temp=(p+i)->ave;
(p+i)->ave=(p+i+1)->ave;
(p+i+1)->ave=temp;
}
}
}
for (int i=0;i<10;i++)
{
cout<<"Student "<<i+1<<":"<<(p+i)->name[20]<<endl;
cout<<(p+i)->ave;
}
}