public,protected,private问题

原创 2012年03月29日 20:42:50

一直没扯清这几个访问限定符,这次用vs2010下用代码实验下,记录如下:

class Base{
public:
	Base(string book_a = " ", double price_a = 0.0): book(book_a), price(price_a) {}
protected:
	double price;
private:
	string book;
}


class Drived: public Base{
public:
	Drived(string book_a = " ", double price_a = 0.0):Base(book_a, price_a) {}

	void memfcn(const Drived &d, const Base &b)
	{
		double ret = price;	//OK,使用的是this->price
		string temp = book;	//error,虽然还是想访问this的基类部分,但是行不通!!!

		ret = d.price;		//OK, 派生类通过派生类对象访问基类的protected成员
		temp = d.book;	//error

		ret = b.price;	//error, 派生类对基类对象的protected成员没有特殊访问权限。
		temp = b.book;	//error
	}
}

注意:将基类与派生类区别开来,尽管对于派生类对象,它也具有基类成分。

另外:

 

公有继承:基类保持自己的访问级别。

保护继承:基类的public和protected成员在派生类中为protected.

私有继承:基类所有成员在派生类中为private.

深入理解C++中public、protected及private用法

深入理解C++中public、protected及private用法 投稿:shichen2014 字体:[增加 减小] 类型:转载 这篇文章主要介绍了C++中public、pro...
  • leolinsheng
  • leolinsheng
  • 2015年01月13日 10:42
  • 5981

C#中。简述 private、 protected、 public、 internal 修饰符的访问权限

private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继承类中可以访问。 public : 公共成员,完全公开,没有访问限制。 internal:...
  • u012468523
  • u012468523
  • 2014年07月28日 16:15
  • 1170

C++中关于public、protect、private的访问权限控制

一:成员的访问权限 1: public访问权限     一个类的public成员变量、成员函数,可以通过类的成员函数、类的实例变量进行访问        #include #include us...
  • ycf74514
  • ycf74514
  • 2015年10月11日 21:29
  • 4604

public、protected和private访问权限以及继承问题

1.先来回顾与总结三中访问控制符各自的访问权限: private, public, protected 访问标号的访问范围: private:只能由1.该类中的函数、2.其友元函数访问。 ...
  • doller999
  • doller999
  • 2012年07月09日 15:57
  • 1239

访问权限的问题(访问限制符)private,protected,public

写在前面:在面向对象编程中,最提倡的是通过调用方法来改变自己的属性,类应当提供操作数据的方法,这些方法需要编程人员进行精心设计。 首先声明,一个类中的实例变量总是可以操作该类中的实例变量和类变量,类变...
  • liusure09
  • liusure09
  • 2015年10月30日 15:29
  • 630

java类的访问权限问题(public default private protected)

java中的访问权限you
  • u011665874
  • u011665874
  • 2014年10月12日 11:39
  • 465

C++中public,protected,private派生类继承问题和访问权限问题

C++中public,protected,private派生类继承问题和访问权限问题 当一个子类从父类继承时,父类的所有成员成为子类的成员,此时对父类成员的访问状态由继承时使用的继承限定符决...
  • binbingg
  • binbingg
  • 2014年01月17日 09:31
  • 445

C++中的 public和private以及protected派生类继承问题和访问权限问题

第一:private, public, protected 访问标号的访问范围。 private:只能由1.该类中的函数、2.其友元函数访问。 不能被任何其他访问,该类的对象也不能访问。 p...
  • hongkangwl
  • hongkangwl
  • 2013年12月30日 20:54
  • 1218

private,public,protected,还有default四种之间的区别

  • 2015年11月23日 22:34
  • 4KB
  • 下载

说出作用域public, private, protected,以及不写得区别

  • 2013年04月22日 10:27
  • 11KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:public,protected,private问题
举报原因:
原因补充:

(最多只允许输入30个字)