C++ Wxwidgets | |添加类和方法

C++ Wxwidgets | |添加类和方法,c++,class,wxwidgets,C++,Class,Wxwidgets,我需要通过添加一个带有方法的类来重建这段代码。如果Zad2frame已经是一个类,如何添加类? 第一类处理复数的加法,第二类处理减法等。 我在一个外部文件Zespolone.h(必需)中保存了所有代码 #如果包括ZESPOLONE #定义包含的ZESPOLONE #endif//ZESPOLONE_H_包括在内 泽斯波洛纳结构 { 双rzeczywista; 双尾肌; }; void Zad2Frame::OnButton1Click(wxCommandEvent&event) { 玉米花1号;

我需要通过添加一个带有方法的类来重建这段代码。如果Zad2frame已经是一个类,如何添加类? 第一类处理复数的加法,第二类处理减法等。 我在一个外部文件Zespolone.h(必需)中保存了所有代码

#如果包括ZESPOLONE
#定义包含的ZESPOLONE
#endif//ZESPOLONE_H_包括在内
泽斯波洛纳结构
{
双rzeczywista;
双尾肌;
};
void Zad2Frame::OnButton1Click(wxCommandEvent&event)
{
玉米花1号;
玉米须;
int wynik1;
int wynik2;
char*znak;
wxString wynik;
if(textcrl1->GetValue().ToDouble(&przycisk1_1.rzeczywista)和&textcrl2->GetValue().ToDouble(&przycisk1_1.urojona)
&&TextCtrl3->GetValue().ToDouble(&przycisk1_2.rzeczywista)和&TextCtrl4->GetValue().ToDouble(&przycisk1_2.urojona))
{
wynik1=(przycisk1_1.rzeczywista+przycisk1_2.rzeczywista);
wynik2=(przycisk1_1.urojona+przycisk1_2.urojona);
如果(wynik2>=0)
{
znak=“+”;
}

Wiik

C++,每个类通常存储在两个文件中。包含类的声明的头文件。例如:MyNewClass .h和包含该类实现的CPP文件。例如:MyNewClass .CPP.<


因此,在本例中,要使用
MyNewClass
,您将有一行
#包括“MyNewClass.h”
靠近程序顶部。一旦包含该文件,可以在需要时使用
MyNewClass

编辑。我设法添加了名为Obliczenia的类。在文件zad2Main.cpp中,我创建了一个计算对象,它是计算类的一个实例
#ifndef ZESPOLONE_H_INCLUDED
#define ZESPOLONE_H_INCLUDED

#endif // ZESPOLONE_H_INCLUDED

struct Zespolona
{
    double rzeczywista;
    double urojona;
};

void Zad2Frame::OnButton1Click(wxCommandEvent& event)
{
    Zespolona przycisk1_1;
    Zespolona przycisk1_2;
    int wynik1;
    int wynik2;
    char* znak;
    wxString wynik;

    if(TextCtrl1->GetValue().ToDouble(&przycisk1_1.rzeczywista) && TextCtrl2->GetValue().ToDouble(&przycisk1_1.urojona)
            && TextCtrl3->GetValue().ToDouble(&przycisk1_2.rzeczywista) && TextCtrl4->GetValue().ToDouble(&przycisk1_2.urojona))
    {
        wynik1 = (przycisk1_1.rzeczywista + przycisk1_2.rzeczywista);
        wynik2 = (przycisk1_1.urojona + przycisk1_2.urojona);
        if(wynik2>=0)
        {
            znak="+";
        }
        wynik << wynik1<<znak<<wynik2<<"i";
        TextCtrl5->SetValue(wynik);
    }
}

void Zad2Frame::OnButton2Click(wxCommandEvent& event)
{
    Zespolona przycisk1_1;
    Zespolona przycisk1_2;
    int wynik1;
    int wynik2;
    char* znak;
    wxString wynik;

    if(TextCtrl1->GetValue().ToDouble(&przycisk1_1.rzeczywista) && TextCtrl2->GetValue().ToDouble(&przycisk1_1.urojona)
            && TextCtrl3->GetValue().ToDouble(&przycisk1_2.rzeczywista) && TextCtrl4->GetValue().ToDouble(&przycisk1_2.urojona))
    {
        wynik1 = (przycisk1_1.rzeczywista - przycisk1_2.rzeczywista);
        wynik2 = (przycisk1_1.urojona + przycisk1_2.urojona);
        if(wynik2>=0)
        {
            znak="+";
        }
        wynik << wynik1<<znak<<wynik2<<"i";
        TextCtrl5->SetValue(wynik);
    }
}

void Zad2Frame::OnButton3Click(wxCommandEvent& event)
{
    Zespolona przycisk1_1;
    Zespolona przycisk1_2;
    int wynik1;
    int wynik2;
    char* znak;
    wxString wynik;

    if(TextCtrl1->GetValue().ToDouble(&przycisk1_1.rzeczywista) && TextCtrl2->GetValue().ToDouble(&przycisk1_1.urojona)
            && TextCtrl3->GetValue().ToDouble(&przycisk1_2.rzeczywista) && TextCtrl4->GetValue().ToDouble(&przycisk1_2.urojona))
    {
        wynik1 = (przycisk1_1.rzeczywista * przycisk1_2.rzeczywista);
        wynik2 = (przycisk1_1.urojona * przycisk1_2.urojona);
        if(wynik2>=0)
        {
            znak="+";
        }
        wynik << wynik1<<znak<<wynik2<<"i";
        TextCtrl5->SetValue(wynik);
    }
}

void Zad2Frame::OnButton4Click(wxCommandEvent& event)
{
    Zespolona przycisk1_1;
    Zespolona przycisk1_2;
    int wynik1;
    int wynik2;
    char* znak;
    wxString wynik;

    if(TextCtrl1->GetValue().ToDouble(&przycisk1_1.rzeczywista) && TextCtrl2->GetValue().ToDouble(&przycisk1_1.urojona)
            && TextCtrl3->GetValue().ToDouble(&przycisk1_2.rzeczywista) && TextCtrl4->GetValue().ToDouble(&przycisk1_2.urojona))
    {
        wynik1 = (przycisk1_1.rzeczywista / przycisk1_2.rzeczywista);
        wynik2 = (przycisk1_1.urojona / przycisk1_2.urojona);
        if(wynik2>=0)
        {
            znak="+";
        }
        wynik << wynik1<<znak<<wynik2<<"i";
        TextCtrl5->SetValue(wynik);
    }
}