Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 13 su 13
  1. #11
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    60
    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:

  2. #12
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Ma perche' non usi mai i tag

    CODE

    /CODE

    ?

    Cosi' non si capisce nulla del codice ...

    P.S. Comunque, mi sembra che ci sia una incongruenza tra il .h e il .cpp quando scrivi

    friend ostream &operator<<(ostream &,const Point &);

    ostream &operator<<(ostream &output,Point &p){
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #13
    Utente di HTML.it L'avatar di KrOW
    Registrato dal
    Feb 2009
    Messaggi
    281
    Oltre al consiglio che ti ha dato oregon, ti consiglio di capire ed interpretrare gli errori del compilatore ... Non prenderla a male, ma se ad ogni errore c' è qualcuno che ti corregge tu non capirai mai il tuo errore ... Il messaggio d' errore del linker che ti è apparso dice che non è stato possibile risolvere il simbolo :
    ostream &operator<<(ostream &output,const Point &p)
    (cioè non è stato posssibile trovare l'implementazione della funzione) nel modulo circle.obj .... Prova a guardare come hai scritto la dichiarazione e la definzione ... Comunque a prima vista mi sembra che ci siano altri errori ....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.