Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++,变量,抽象/虚拟类 请帮助我,我对目标C++很陌生,我不知道如何正确地获得变量iCijaTyWa。 我不知道怎么了。有可能我不完全理解虚拟类和抽象类,所以我很乐意解释我的错误。 我希望程序使用Organizmy类中的指针,从我的对象Wolf输出inicjatywa的值(值=5) class Organizmy { public: int inicjatywa; virtual void akcja() = 0; virtual void kolizja() = 0; virtual void rysowanie() = 0; virtual ~Organizmy(){}; }; class Animal: public Organizmy { public: int inicjatywa; virtual void akcja() = 0; virtual void kolizja() = 0; virtual void rysowanie() = 0; virtual ~Animal(){}; }; class Wolf: public Animal { public: int inicjatywa; Wolf(){ cout << "Crate Wolf" << endl; this->inicjatywa = 5; }; ~Wolf(){}; void akcja(){}; void kolizja(){}; void rysowanie(){ cout << "W" << endl; cout << this->inicjatywa << endl; // here he output 5 }; }; int main() { Organizmy *b; // I create new poiter; type Organizmy b=new Wolf(); // He is now pointing new object Wolf b->rysowanie(); // here he outputs correct value of the new elemnt cout<<b->inicjatywa<< endl; //but here the code outputs -8421.... //and it should be 5 not -8421.... } 类组织 { 公众: int inicjatywa; 虚空akcja()=0; 虚拟void kolizza()=0; 虚空rysowanie()=0; 虚拟~organizemy(){}; }; 班级动物:公共组织 { 公众: int inicjatywa; 虚空akcja()=0; 虚拟void kolizza()=0; 虚空rysowanie()=0; 虚拟~Animal(){}; }; 狼类:公共动物 { 公众: int inicjatywa; 狼(){ 有几件事。先把你的函数命名为有意义的东西,这些名字都是胡言乱语,对这里的任何人都毫无意义_C++_Virtual_Abstract - Fatal编程技术网

C++,变量,抽象/虚拟类 请帮助我,我对目标C++很陌生,我不知道如何正确地获得变量iCijaTyWa。 我不知道怎么了。有可能我不完全理解虚拟类和抽象类,所以我很乐意解释我的错误。 我希望程序使用Organizmy类中的指针,从我的对象Wolf输出inicjatywa的值(值=5) class Organizmy { public: int inicjatywa; virtual void akcja() = 0; virtual void kolizja() = 0; virtual void rysowanie() = 0; virtual ~Organizmy(){}; }; class Animal: public Organizmy { public: int inicjatywa; virtual void akcja() = 0; virtual void kolizja() = 0; virtual void rysowanie() = 0; virtual ~Animal(){}; }; class Wolf: public Animal { public: int inicjatywa; Wolf(){ cout << "Crate Wolf" << endl; this->inicjatywa = 5; }; ~Wolf(){}; void akcja(){}; void kolizja(){}; void rysowanie(){ cout << "W" << endl; cout << this->inicjatywa << endl; // here he output 5 }; }; int main() { Organizmy *b; // I create new poiter; type Organizmy b=new Wolf(); // He is now pointing new object Wolf b->rysowanie(); // here he outputs correct value of the new elemnt cout<<b->inicjatywa<< endl; //but here the code outputs -8421.... //and it should be 5 not -8421.... } 类组织 { 公众: int inicjatywa; 虚空akcja()=0; 虚拟void kolizza()=0; 虚空rysowanie()=0; 虚拟~organizemy(){}; }; 班级动物:公共组织 { 公众: int inicjatywa; 虚空akcja()=0; 虚拟void kolizza()=0; 虚空rysowanie()=0; 虚拟~Animal(){}; }; 狼类:公共动物 { 公众: int inicjatywa; 狼(){ 有几件事。先把你的函数命名为有意义的东西,这些名字都是胡言乱语,对这里的任何人都毫无意义

C++,变量,抽象/虚拟类 请帮助我,我对目标C++很陌生,我不知道如何正确地获得变量iCijaTyWa。 我不知道怎么了。有可能我不完全理解虚拟类和抽象类,所以我很乐意解释我的错误。 我希望程序使用Organizmy类中的指针,从我的对象Wolf输出inicjatywa的值(值=5) class Organizmy { public: int inicjatywa; virtual void akcja() = 0; virtual void kolizja() = 0; virtual void rysowanie() = 0; virtual ~Organizmy(){}; }; class Animal: public Organizmy { public: int inicjatywa; virtual void akcja() = 0; virtual void kolizja() = 0; virtual void rysowanie() = 0; virtual ~Animal(){}; }; class Wolf: public Animal { public: int inicjatywa; Wolf(){ cout << "Crate Wolf" << endl; this->inicjatywa = 5; }; ~Wolf(){}; void akcja(){}; void kolizja(){}; void rysowanie(){ cout << "W" << endl; cout << this->inicjatywa << endl; // here he output 5 }; }; int main() { Organizmy *b; // I create new poiter; type Organizmy b=new Wolf(); // He is now pointing new object Wolf b->rysowanie(); // here he outputs correct value of the new elemnt cout<<b->inicjatywa<< endl; //but here the code outputs -8421.... //and it should be 5 not -8421.... } 类组织 { 公众: int inicjatywa; 虚空akcja()=0; 虚拟void kolizza()=0; 虚空rysowanie()=0; 虚拟~organizemy(){}; }; 班级动物:公共组织 { 公众: int inicjatywa; 虚空akcja()=0; 虚拟void kolizza()=0; 虚空rysowanie()=0; 虚拟~Animal(){}; }; 狼类:公共动物 { 公众: int inicjatywa; 狼(){ 有几件事。先把你的函数命名为有意义的东西,这些名字都是胡言乱语,对这里的任何人都毫无意义,c++,virtual,abstract,C++,Virtual,Abstract,其次,您的错误非常简单。“Wolf”和“Animal”类不需要重新声明“inicjatywa”,只要它们将“Organizmy”的继承声明为公共的(“外部世界”)就会看到“Organizmy”的所有公共元素。代码如下所示: class Organizmy { public: int inicjatywa; virtual void akcja() = 0; virtual void kolizja() = 0; virtual void rysowanie() =

其次,您的错误非常简单。“Wolf”和“Animal”类不需要重新声明“inicjatywa”,只要它们将“Organizmy”的继承声明为公共的(“外部世界”)就会看到“Organizmy”的所有公共元素。代码如下所示:

class Organizmy
{
public:
    int inicjatywa;
    virtual void akcja() = 0;
    virtual void kolizja() = 0;
    virtual void rysowanie() = 0;
    virtual ~Organizmy(){};
};

class Animal: public Organizmy
{
    public:
    virtual void akcja() = 0;
    virtual void kolizja() = 0;
    virtual void rysowanie() = 0;
    virtual ~Animal(){};
};

class Wolf: public Animal
{
public:

    Wolf(){
        cout << "Crate Wolf" << endl;
        inicjatywa = 5;
    };
    ~Wolf(){};
    void akcja(){};
    void kolizja(){};
    void rysowanie(){
        cout << "W" << endl;
        cout << inicjatywa << endl; // here he output 5 
    };
};
int main()
{
    Organizmy *b;     // I create new poiter; type Organizmy
    b=new Wolf();     // He is now pointing new object Wolf
    b->rysowanie();   // here he outputs correct value of the new elemnt 
    cout<<b->inicjatywa<< endl; //but here the code outputs -8421.... 
                            //and it should be 5 not -8421....
}
类组织
{
公众:
int inicjatywa;
虚空akcja()=0;
虚拟void kolizza()=0;
虚空rysowanie()=0;
虚拟~organizemy(){};
};
班级动物:公共组织
{
公众:
虚空akcja()=0;
虚拟void kolizza()=0;
虚空rysowanie()=0;
虚拟~Animal(){};
};
狼类:公共动物
{
公众:
狼(){

请阅读编辑帮助(编辑器中的问号显示它),特别是关于格式化代码的部分。我不知道你的问题是什么?Objul-C或C++。实际上哪一个?“我不知道如何正确地获得变量iCijaTyWa……”我甚至不能正确理解它的语义,那么我应该如何帮助呢?A用英语写,并且描述您的特定错误消息/输入/预期输出将大大改进您的问题。感谢您提供如何正确提问的建议,这是我在这里的第一个问题,所以我会改进,但我仍然需要帮助;/@Bliseq好吧,您已经有了一个通过按照我给你的建议编辑它,这是一个改进的机会。非常感谢,我为那些名字感到抱歉,我用我的母语编程,下次我会做得更好。如果我想得到帮助,下次还有什么我应该想到的吗?啊,是的,那会更有意义……想想看,我想我从来没有见过代码编写英语以外的十个词……我唯一要说的是不要过度使用虚拟函数(你似乎不在这里),例如,假设你有一个“getWeigth()”函数。这对于所有Organizmy对象都是一样的,并且不需要重载,因为实现是在Wolf、Animal和Organizmy之间共享的。您在提供的代码中使用virtual似乎已经足够了。