????c++??????c??????struct?????????c++?е?struct??c???????????c++?е?struct?????У??????г??????????????c??????У???c++??struc??class??????????????Щ????????????????????c??struct???????????????c++?е?class??struct??????????????
#include <iostream>
using namespace std;
class BaseClass
{
int a;
int b;
public:
void myfunc() {}
}
int main()
{
std::cout << "size = " << sizeof(BaseClass) << std::endl;
rturn 0;
}
?????????????н???8??????????????????static ????????????洢?????????????洢??????????????????????c++?????????г????????????????c++?????????????????????????????????????????С???λ????????????????????????????????????С?0???????????????????????????
#include <iostream>
using namespace std;
class BaseClass
{
int a;
int b;
char c;
public:
virtual void myfunc() {}
}
int main()
{
std::cout << "size = " << sizeof(BaseClass) << std::endl;
rturn 0;
}
???????????????е???????????????mac 64)?????н??24????????£?????????int?8??????????????麯???????????????c++???麯????c++?????????????c++?麯????????????????????????????????????????????????????????????????????????c++???????????int???????????麯???????????????int???飬???汣???????е??麯?????????????????????????棩?????????麯?????????int ??????8??????24??????
#include <iostream>
using namespace std;
class BaseClass
{
public:
int a;
int b;
char c;
public:
virtual void myfunc() {}
};
class ChildClass : public BaseClass
{
public:
int d;
public:
virtual void myfunc() {}
};
int main()
{
std::cout << "BaseClass size = " << sizeof(BaseClass) << std::endl;
std::cout << "ChildClass size = " << sizeof(ChildClass) << std::endl;
rturn 0;
}
???????????н?????????24???????????п??????н??????????????????????????????????????????????int?????С????????????£????????????£?????????е?????????????24?????????????????????????????б仯??????????????????char c???????int d?????????5????????????8?????????????????char ??????????8??????
?????????????????????????????????????????????????????麯??????????????????????????????????????
#include <iostream>
using namespace std;
class BaseClass
{
public:
int a;
int b;
public:
virtual void myfunc() {printf("BaseClass myfunc ");}
virtual void myfunc1() {printf("BaseClass myfunc1 ");}
};
class ChildClass : public BaseClass
{
public:
int d;
public:
virtual void myfunc() {printf("ChildClass myfunc ");}
virtual void myfunc3() {printf("ChildClass myfunc3 ");}
};
int main()
{
BaseClass *a = new BaseClass;
a->myfunc();
a->myfunc1();
printf("**************");
BaseClass *b = new ChildClass;
a->myfunc();
a->myfunc1();
//    b->myfunc3();
//    int myd = b->d;
printf("**************");
ChildClass *c = new BaseClass;
a->myfunc();
a->myfunc1();
rturn 0;
}
???????н????
????BaseClass myfunc
????BaseClass myfunc 1
????**************
????ChildClass myfunc
????BaseClass myfunc 1
????**************
????ChildClass myfunc
????BaseClass myfunc 1
????ChildClass myfunc3
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????麯??????????????????????????????????????????????????????麯????????????????????д???????麯???????????ж????????????????????麯??????????????????????????????????????????????麯?????????????????????麯????????????????????????????
???????????????????????????????????????????????????????????????????????е????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????d????????????????????麯???????????????????麯?????????麯???????????????????????????myfunc3??????....??