新市网站建设,千牛网站上的店铺推广怎么做,购物网站框架,烟台 网站建设个人主页#xff1a;Jason_from_China-CSDN博客 所属栏目#xff1a;C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目#xff1a;C知识点的补充_Jason_from_China的博客-CSDN博客 概念概述 C一种实现封装的方式#xff0c;用类将对象的属性与方法结合在一块#xf… 个人主页Jason_from_China-CSDN博客 所属栏目C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目C知识点的补充_Jason_from_China的博客-CSDN博客 概念概述 C一种实现封装的方式用类将对象的属性与方法结合在一块让对象更加完善通过访问权限选择性的将其接口提供给外部的用户使用。public修饰的成员在类外可以直接被访问protected和private修饰的成员在类外不能直接被访问protected和private是一样的以后继承章节才能体现出他们的区别。 访问权限作用域从该访问限定符出现的位置开始直到下一个访问限定符出现时为止如果没有后面没有访问限定符作用域就到 }即类结束。 class定义成员没有被访问限定符修饰时默认为privatestruct默认为public。 一般成员变量都会被限制为private/protected需要给别人使用的成员函数会放为public。 访问限定符的符号 在C中访问限定符用于控制类成员的访问权限。主要有三种访问限定符 public公开的可以被任何外部代码访问。protected受保护的可以被类本身以及其派生类访问。private私有的只能被类本身访问。 访问限定符的使用public公有的 默认情况下如果不指定访问限定符成员就是公开的。公开成员可以在类的任何对象上被访问也可以在派生类中被访问除非被隐藏。 class MyClass {
public:int publicVar; // 公开成员可以被任何外部代码访问void publicFunc() { /* ... */ } // 公开成员函数
}; 这里我们可以看见类外面是可以访问私有变量的 访问限定符的使用private私有变量 私有成员只能被类本身访问。它们不能被外部代码访问也不能被派生类访问。 class MyClass {
private:int privateVar; // 私有成员只能被类本身访问void privateFunc() { /* ... */ }
public:void publicFunc() {privateVar 20; // 正确类本身可以访问私有成员privateFunc(); // 正确}
}; 在这里我们可以看到如果放到私有变量里面我们可以看到类比外面是无法访问类里面的私有变量的。 访问限定符的使用protected 类内部访问类本身可以访问其 protected 成员。派生类访问从该类派生出的子类也可以访问基类的 protected 成员。外部访问限制类外部的代码即不是类本身也不是派生类不能直接访问 protected 成员。 //基类
class BaseClass
{
protected:int protectedVar; // 受保护成员只能被类本身和派生类访问void protectedFunc() { /* ... */ }
};// 这里是派生类protected修饰的可以在派生类里面访问
class DerivedClass : public BaseClass
{
public:void accessProtectedMembers() {protectedVar 10; // 正确派生类可以访问基类的受保护成员protectedFunc(); // 正确}
}; 通过使用派生类你可以创建更加灵活和可重用的代码同时保持代码的组织性和清晰性。 需要注意的小点 struct struct MyStruct
{//公有成员变量void Func(){cout struct 公有成员变量 endl;}
public://公有成员变量private://私有变量}; class class Date
{//私有成员函数变量void Func();
public://公有//构造函数(全缺省构造函数)Date(int year 1, int month 1, int day 1){_year year;_month month;_day day;}private://私有成员函数变量int _year;int _month;int _day;
};