#include<iostream>
using namespace std;
class CPeople //struct C++ 结构体是类的一种特定情况
{
public: //访问修饰符
int a;
void fun()
{
cout << "fun" << " " << a << endl;
}
};
int main()
{
CPeople op;//对象创建的两种方式
CPeople* op1 = new CPeople;
op.a = 12;
op.fun();
op1->a = 13;
op1->fun();
system("pause");
return 0;
}
成员调用
·栈区普通对象 对象.成员
·堆区指针对象 对象->成员 (注意释放指针对象)
类的所有成员(个别特殊static),必须由对象访问。
系统不会为类分配空间,只有当声明对象时(创建时),才会分配空间。
访问修饰符
类中如果不写任何的访问修饰符,默认为private(私有的),private类内可见,纯私有,只能在类内使用;
结构体中默认的修饰符是public(公有的)
作用范围:从书写的位置开始,到下一个修饰符或者到类结尾的花括号。
子类可以使用父类受保护的成员,除子类外(其他类、自定义函数和主函数)均不能使用;
protected在子类和类内使用;
public都可以使用;
#include<iostream>
using namespace std;
class CPeople //struct C++ 结构体是类的一种特定情况
{
private: //访问修饰符
int a;
protected:
void fun()
{
cout << "fun" << " " << a << endl;
}
};
class CXM : public CPeople //子类使用父类受保护的成员,除子类外(其他类、自定义函数和主函数)均不能使用
{
void fun4()
{
fun();
}
};
//class CP
//{
// CPeople op;
// void fun3()
// {
// op.fun(); //报错
// }
//};
int main()
{
/*CPeople op; //报错
op.fun();*/
system("pause");
return 0;
}