C++基础知识(四)

#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;
}

猜你喜欢

转载自blog.csdn.net/weixin_37753215/article/details/81632617