C++访问控制
2017-09-06 00:00
148 查看
C++ class是对struct的扩展,含有数据成员和成员函数
c++ 三种访问控制权限
private:只供内部函数使用
public:类外部程序可以使用
protected:当前类和子类可以使用
C++规范,类的首字母大写
设置成private原因,把数据成员屏蔽起来,对外提供封装函数。
例子:
c++类隐含了一个this指针,指向当前对象。
c++参数的就近原则:如果同一个类和代码块还有同名的变量,则使用的是最近的那个参数。
例子:
c++ 三种访问控制权限
private:只供内部函数使用
public:类外部程序可以使用
protected:当前类和子类可以使用
C++规范,类的首字母大写
设置成private原因,把数据成员屏蔽起来,对外提供封装函数。
例子:
class Person { private: char *name; int age; char *work; public: void setName(char *n) { name = n; } int setAge(int a) { if (a < 0 || a > 150) { age = 0; return -1; } age = a; return 0; } void printInfo(void) { printf("name = %s, age = %d, work = %s\n", name, age, work); } }; int main(int argc, char **argv) { Person per; //per.name = "zhangsan"; per.setName("zhangsan"); per.setAge(200); per.printInfo(); return 0; }
c++类隐含了一个this指针,指向当前对象。
c++参数的就近原则:如果同一个类和代码块还有同名的变量,则使用的是最近的那个参数。
例子:
class Person { private: char *name; int age; char *work; public: void setName(char *name) { this->name = name; } int setAge(int age) { if (age < 0 || age > 150) { this->age = 0; return -1; } this->age = age; return 0; } void printInfo(void) { printf("name = %s, age = %d, work = %s\n", name, age, work); } }; int main(int argc, char **argv) { Person per; //per.name = "zhangsan"; per.setName("zhangsan"); per.setAge(200); per.printInfo(); return 0; }
相关文章推荐
- 【c++】访问控制、覆盖方法和重载方法
- C++ 类访问控制(public/protected/private)
- C++ 类访问控制public/private/protected探讨
- C++基础系列:访问控制与继承
- C++中派生类的访问控制
- 08_c++访问控制和继承
- 原来C++中struct也有构造函数与析构函数,也可以有访问类型控制
- C++小知识:C++类中成员的访问控制属性有哪些类型,什么区别
- C++使用临界区来控制多线程访问同一个变量
- C++ 类访问控制
- C++访问控制权限
- C++基类和派生类私有、保护、公有成员访问控制以及动态绑定、三种继承
- C++ 类访问控制public/private/protected探讨
- C++ 的访问控制设计原理
- C++访问控制-三种继承方式
- C++ 访问控制和继承private、public、protected
- C++的访问权限控制关键字:private / public / protected
- JAVA C# C/C++之比教学:访问控制机制
- 访问控制 - C++快速入门18
- C++中struct也有构造函数与析构函数,也可以有访问类型控制以及结构体大小,类大小