0

次のC++コードがあり、ビルドエラーが発生しています.エラーを見つけることができません.誰か助けてください.コードは次のとおりです.

#include<stdlib.h>
#include <iostream.h>
using namespace std;

class PropertyPortal;
class PropertyType;
class Commercial;
class Residential;
void main()
class PropertyPortal  
{
private:

        int NoOfUsers;
        int UAN;
        char* Name;

        public:
       void setNoOfUsers(int no); 
       void setUAN(int u);      
       void setName(int n); 
       int getNoOfUsers(); 
       int getUAN(); 
       char getName();
       int getPropertyInfo(); 
       //constructors of the class
       PropertyPortal(); 
       PropertyPortal(int, int, char);
       //destructor of the class
       ~PropertyPortal ();

       void setNoOfUsers(int no)
       {
                        NoOfUsers>=1;
                        }
                        void setUAN (int u);
                        {
                        NoOfUsers>=0;
                        UAN>=1;
                        Name=Null;
                        }
                        PropertyPortal (int no, int u, char* n)
                        {
                        NoOfUsers>=no;
                        UAN=u
                        Name=VU-Real-Estate;
                        }
                        PropertyPortal (int no, int u, char* n)
                        {
                        NoOfUsers>=no; 
                        UAN=u
                        Name=n;
                        }
                        void setNoOfUsers(int no)
                        void setUAN(int u)
                        void setName(char n)
                        int getNoOfUsers()
                        int getUAN()
                        char getName()    
                        int getPropertyInfo();
class PropertyType  
{
      private:
              char* City
public:
        void setCity(char c); 
        char getCity(char c); 
        void getPropertyType();
        PropertyType();
        PropertyType(char);
        ~PropertyType();
        PropertyType();
{
        City=Null
}
        PropertyType(char* cCity)
{
        City=cCity
        }
        };          
class Commercial:PropertyType     
{
private:
        int PropertyValue
public:
       void setPropertyValue();
       int getPropertyValue();
       void getPlots();
       Commercial();
       Commercial(char);
       ~Commercial();
};

class Residential:PropertyType     
private:
        int PropertyValue;
public:
       void setPropertyValue();
       int getPropertyValue();
       int getPropertyCategory();     
};
void main ()
{
cout<<"This is just a prototype of all classes";
cout<<endl;
system("PAUSE");
}

オンラインでエラーが発生しまし2,32:2,10,103た。コードで何が間違っているのか、何が起こっているのかを調べるのを手伝ってください。

アップデート ここに画像の説明を入力

4

1 に答える 1

2

多くのエラーは、クラス内に関数宣言と定義の両方があることから発生しています。どちらかを行う

class Foo
{
    public:
        int func();
};
int Foo::func() { return 5; }

また

class Foo
{
    public:
        int func() { return 5; }
};

しかしそうではない

class Foo
{
    public:
        int func();
        // ...
        int func() { return 5; }
};

また、デフォルト値を持つコンストラクターと、作成者から値を取得するコンストラクターの 2 つを使用するつもりであることもわかりました。しかし、次のようにします。

PropertyPortal (int no, int u, char* n)
{
    NoOfUsers>=no;
    UAN=u
    Name=VU-Real-Estate;
}
PropertyPortal (int no, int u, char* n)
{
    NoOfUsers>=no; 
    UAN=u
    Name=n;
}

私はあなたが本当に意味していると思います

PropertyPortal ()
{
    NoOfUsers=1;
    UAN=1;
    Name="VU-Real-Estate";
}
PropertyPortal (int no, int u, char* n)
{
    NoOfUsers=no; 
    UAN=u
    Name=strdup(n); // Remember to free() this later.
}

char*実際、 s をまとめて破棄して を使用std::stringし、おそらく初期化リストについて読んだほうがよいでしょう。

于 2012-11-30T09:53:14.460 に答える