c++中,public 与 private有什么区别?什么时候用?与c语言中有何相似之处?求大神详解,通俗易懂

作者&投稿:茶泉 (若有异议请与网页底部的电邮联系)
学习C语言和C++有什么区别和共同之处?~

c++语言是c语言发展起来的,所以继承了c语言几乎所有的特点,但c++语言又有自己的个性。c语言是一种面向过程的编程语言,而c++主要是面向过程的,因此c++有类的概念,而c语言就没有。c++的功能强大,编译器复杂,适合高端程序的设计和编辑,c语言的编译器简易,适合低端程序。

C语言与C++的区别有很多:
1,全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。
2,C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都是有集成的很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合,是一个集体。但你也可能单独调用API。
3,特别是C++中的图形处理,它和语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在中C++中的。C语言标准中不包括图形处理。
4,C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问;而在VC++中它没有加限定符的为私有的。
4,C语言可以写很多方面的程序,但是C++可以写得更多更好,C++可以写基于DOSr程序,写DLL,写控件,写系统。
5,C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分类明确。
6,C++中的IDE很智能,和VB一样,有的功能可能比VB还强。
7,C++对可以自动生成你想要的程序结构使你可以省了很多时间。有很多可用的工具如加入MFC中的类的时候,加入变量的时候等等。
8,C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。
9,调试功能强大,并且方法多样

*C语言是面向过程的,而C++是面向对象的*

public下面的是公有成员,对象外的所有程序都能访问这些成员,private下的是私有成员,只有对象内部可以访问。
以数组类为例,如果我们要自己设计一个数组类,提供插入Insert、删除Remove等操作。那么Insert和Remove作为这个类的函数就应该用public,否则使用这个数组类的程序就无法使用这些功能。在实现这个数组类的时候,我们需要用一个整型变量记录当前数组个数,我们不希望这个变量能被使用者随意修改,而是在使用Insert和Remove的时候才修改,那么就把这个变量放在private下面声明,这样使用这个数组类的程序就不能直接修改这个变量的值,防止这个类的数据发生错乱。
与C语言没有什么可比性,公有成员和私有成员是面向对象的程序设计语言才有的概念,而C语言是面向过程的。

c++是面向对象的过程的语言 而c语言面向过程的语言 所以c肯定没有诸如public和private这些关键字
public和private是公有和私有的意思 public就是所有函数都可以对其修饰的成员进行读写 而private只能是本对象的方法对其进行读写 public和private都是编译器的行为 当编译器检查到非本对象的方法访问私有成员就会报错 但是编译出的结果都差不多 public或private修饰同一变量都一样的 没有哪一个特殊 所以c++只在编译器层面控制对象 要学会用c的知识来解释c++的行为和实现

被定义为private的成员函数不能被外部访问。通俗的来说,就是你包含这个头文件的.cpp文件和除了类定义域内里不能像这样访问该成员函数:
defined_class a; //defined_class是一个你定义的类名称
a.member_function(); //若成员函数member_funtion()为private,就不能在类的外部这样使用
//具有友元声明的类的内部除外
这种机制便能很好地实现封装
不明白接着问我~~~~