va bene..ora nn mi da piu errori di compilazione...però mi da errori di link:
----------------------------------------------------------------------------------------
Compiling...
circle.cpp
Skipping... (no relevant changes detected)
maincircle.cpp
Linking...
circle.obj : error LNK2001: unresolved external symbol "class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl operator<<(class std::basic_ostream<char,struct std::char_traits<char> > &,class Point const &)" (??6@YAAAV?$basic_ostrea
m@DU?$char_traits@D@std@@@std@@AAV01@ABVPoint@@@Z)
maincircle.obj : error LNK2001: unresolved external symbol "class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl operator<<(class std::basic_ostream<char,struct std::char_traits<char> > &,class Point const &)" (??6@YAAAV?$basic_os
tream@DU?$char_traits@D@std@@@std@@AAV01@ABVPoint@ @@Z)
Debug/point.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
point.exe - 3 error(s), 0 warning(s)
--------------------------------------------------------------------------------------
//circle.h
#ifndef CIRCLE_H
#define CIRCLE_H
#include <iostream>
#include "point.h"
//using namespace std;
class Circle : public Point{
friend ostream &operator<<(ostream &,Circle &);
public:
Circle(double r=0.0,int x=0,int y=0);
double GetRadius();
double Area();
protected:
double radius;
};
#endif
----------------------------------------------------------------------------------------
//////////////////////////////////////////////
//Ereditarietà:classi punto e cerchio //
//////////////////////////////////////////////
#include<iostream>
#ifndef POINT_H
#define POINT_H
using namespace std;
class Point{
friend ostream &operator<<(ostream &,const Point &);
public:
Point(int=0,int=0);
GetX();
GetY();
private:
int x;
int y;
};
#endif
----------------------------------------------------------------------------------------
//point.cpp
#include <iomanip>
#include <iostream>
#include "point.h"
//costruttore
Point::Point(int primo,int secondo){
x=primo;
y=secondo;
}
int Point::GetX(){
return x;
}
int Point::GetY(){
return y;
}
ostream &operator<<(ostream &output,Point &p){
output<<"["<<setw(4)<<p.GetX()<<","<<setw(4)<<p.GetY()<< "]\n";
return output;
}
----------------------------------------------------------------------------------------
//main.cpp
#include <iostream>
#include "circle.h"
#include "point.h"
using namespace std;
int main(){
int x1=1;
int x2=2;
int y1=3;
int y2=3;
double rad=1.1;
Circle c(rad,x1,y1);
Point p(x2,x2);
cout<<c<<endl;
cout<<p<<endl;
cout<<"un po di cambiamenti.."<<endl;
// Point New=static_cast<Point>(c);
//cout<<New<<endl;
// *ptr=c;
// *ptr1=p;
return 0;
}
----------------------------------------------------------------------------------------
//circle.cpp
#include "circle.h"
#include "point.h"
#include <iomanip>
#include <iostream>
#define PI 3.14
using namespace std;
Circle::Circle(double r,int x,int y):Point(x,y){
radius=r;
}
double Circle::GetRadius(){
return radius;
}
double Circle::Area(){
return (radius*radius*PI);
}
ostream &operator<<(ostream &output,Circle &c){
output<<"Il cerchio ha centro: "<<static_cast<Point>(c)<<"\n"
<<"Il raggio del cechio è: "<<c.GetRadius()<<"\n"
<<"L'area è: "<<c.Area()<<endl;
return output;
}
----------------------------------------------------------------------------------------
cosa potrebbe essere??
:master:

Rispondi quotando