哪位高手帮我解答一下:C++中有私有函数成员吗?

作者&投稿:有巧 (若有异议请与网页底部的电邮联系)
C++ 请问一下什么成员函数需要声明为私有成员函数?~

1、对于私有成员函数,类的实例化对象不可调用。
2、私有成员函数只供类的其他函数调用。
3、私有成员函数实现了对外的信息掩藏,对一些有价值的实现进行了保护(在没有源码,只有类的可调用的外部接口)。

C++中调用类的私有成员函数的方法就是,在该类中再声明定义一个公有成员函数
在其函数内部调用自己的私有成员函数,向外使用的话,在别的类中包含该类的头文件,就可以通过公有函数隐式的访问私有成员函数;
给个简单例子
class A
{
private:
void fuck();
public:
void howfuck()
{
fuck();
}
};

#include "A.h"
class Fuck
{
public:
A xiha;

}

xiha.howfuck(); //这样就可以访问A类的私有成员fuck函数了

c++中私有函数只能被自己的成员函数调用,而不能类外部的成员调用。
也就是说,类的对象是不能直接调用私有函数的。要间接调用。例如:
class base
{
private:
fun1();

public:
pubFunc1() { func1();} //输出base私有函数
};

int main()
{
base b;
……
b.pubFunc1(); //间接调用base类私有函数func1
}

出于安全性考虑~
有一些函数或变量是用于类的内部处理,你不想让其他类知道
私有成员只能在函数体内调用,不能在类外被调用

=================================
错误是你的words是一个字符指针数组,里面存的是指针,而你接收到的字符串存在w中,这个w是一个局部变量,超出本函数就失效了。所以,words里面的10个字符指针都是垃圾值了。这就是你放在构造函数可以正确输出的原因。

我修改为w也是类的成员变量,这样就可以了。不过你的words也没有什么存在的必要了。

#include<iostream>
#include<cstring>
using namespace std;
class word
{
public:
word();
void lookup();
private:
char *words[10];
char w[10][100];
};

word::word()
{

int i;
cout<<"please input data:"<<endl;
for(i=0;i<=9;i++)
{
cin>>w[i];
words[i]=w[i];
}

}
void word::lookup()
{
int i;
cout<<endl<<"output data:"<<endl;
for(i=0;i<=9;i++)
cout<<words[i]<<endl;

}

void main()
{
word w1;
w1.lookup();
}


请哪位高手帮我解答一下这道题。谢谢!
正方形最大,其它的可以是除最大外的所有可能。结论:周长相等的图形:越接近圆的面积越大;边数相同的,越正的面积越大;圆的面积最大。面积相等的图形:越接近圆的周长越小;边数相同的,越正的周长越小;圆的周长最小。

化学的各位高手帮我解答一下吧!!
K 最外层一个电子 易失电子 失去一个电子达到2 8 8稳定结构就是K+ Ca2+同理 与其相同的阴离子是第三周期的元素形成的阴离子,即 Cl S 以及酸根离子HS- Cl 最外层七个电子 赢得电子 得到一个电子达到2 8 8稳定结构就是Cl- S2-同理 所以 KCl K2S KHS CaCl2 CaS Ca(HS)2 常见 ...

各位高手帮我解决一下这些问题 是关于英语翻译和语法方面的 谢谢各位了...
对于您的问题,我做如下解答:1.改译后的句子中包含的语法是 在时间状语从句中或条件状语从句中,用一般现在时代替一般将来时。也就是说 主句用一般将来时,从句就用一般现在时。翻译为:无论将来发生了什么,它都会留在我的心中!2让步状语从句中:名词形容词放在句首,要进行部分倒装 可是当as引导...

请各位高手帮我解答一下下面的几道小学数学题
第一题:5升=5立方分米 15cm=1.5dm 所以放入铁块后的体积为2X2X1.5=6立方分米 所以铁块的体积为 6-5=1立方分米 第二题:正方形铁块的体积为14X14X14=2744立方厘米 长方形的底面积为2744除以49=56立方厘米 石头的体积为:56X3.5=196立方厘米 第三题:土的体积为56X24X2=2688立方...

哪位高手帮我解答一下,‘虽远必诛’是什么意思?
虽远必诛的意思是:即使离得再远也要诛杀。大汉时期 汉帝说过的一句话,意思侵犯我大汉的 虽然你侥幸认为自身在很远的地方我们没办法有效控制你的恶行,但是不管你哪里(只要你侵犯我们) 我们也要浇灭你,这句话霸气写出了大汉与匈奴势不两立的决心。全句是:“宜悬头槀街蛮夷邸间,以示万里,明犯...

麻烦各位高手帮我解答一下。要详细过程,谢谢了!!(这是高一的数学题,解...
∴X=3时f(x)最大 将X=1,f(x)=2和 X=3,f(x)=5代入解方程组 得a=3\/4, b=1\/3 2.解:log0.25 (3+x) = [log4(3+x) \/ log4(1\/4)] = - log4(3+x) 换底公式 同理log0.25 (2x+1) = - log4(2x+1)方程变为 log4(3-x) - log4(3+x) = log4 (1-x)...

会计高手帮我解答一下
提取任意盈余公积 35000000*5%=1750000 借;利润分配---提取任意盈余公积 1750000 贷;盈余公积--任意盈余公积 1750000 提取法定公益金 35000000*10%=3500000 借;利润分配---提取公益金 3500000 贷;盈余公积--公益金 3500000 向投资者分配利润 26250000*80%=21000000 借;利润分配--未分配利润...

求各位高人帮忙解答一下这几道三角函数的题吧~本人将不胜感激呐!_百度...
1. tanx=sinx\/cosx = cosx sinx = (cosx)^2 ∵(sinx)^2 + (cosx)^2=1 ∴(sinx)^2 + sinx =1 解得:sinx=(-1±√5)\/2 ∵sinx的值域是[-1,1]∴sinx=(√5-1)\/2 2. 两边平方:(sinx + cosx)^2 =(sinx)^2 + 2sinxcosx + (cosx)^2 = 1+sin2x =1\/25 sin2x=-...

哪位数学高手帮我解决一下这些问题 好的加分
第一题 连接对角线 得到两个三角形 所以一个三角形的面积是十分之三 三角形的面积等于底乘高乘以二分之一 所以高等于五分之六 第二题 运用两者的比值来解答 5|8(八分之五)除以二十分之九 等于十八分之二十五 再用 三除以十八分之二十五 等于 二十五分之五十四 就行了 比值的...

哪位高手能帮我解答一下这张内涵图的意思
您好,非常乐意帮你解答:①本图的色调灰暗,给人恐怖的气氛,不由得联想社会的阴暗面和黑色恐怖 ②所有人的穿着一致,并突出了红领巾的颜色,说明人民从小就没有自己的思想,没有自己的个性,红色才是主色调,任何事情都要突出红,唱红歌之类 ③每个人的面容都一样,说明我们只是被社会工厂塑造成一样...

宜宾市17182522910: 哪位高手帮我解答一下:C++中有私有函数成员吗? -
晁寒银翘: c++中私有函数只能被自己的成员函数调用,而不能类外部的成员调用. 也就是说,类的对象是不能直接调用私有函数的.要间接调用.例如: class base { private: fun1();public: pubFunc1() { func1();} //输出base私有函数 };int main() { base b; …… b.pubFunc1(); //间接调用base类私有函数func1 }

宜宾市17182522910: 求高手帮助阐释一下c++中类 里面 public 和 private 的用法.也就是说这两个有什么用. -
晁寒银翘: private和public的作用是让编译器帮你检查某些模块是否使用了他没权限使用的模块,也就是生成可执行代码的时候做权限检查.比如,公司里各个部门有自己私有的信息,财务部可以看所有员工工资,而销售部不可以,普通员工也不可以.可...

宜宾市17182522910: 在C++类中关于私有成员初始化问题,麻烦高手帮忙调一下程序.... -
晁寒银翘: 做个测试,希望有所帮助. 代码 #include<iostream> using namespace std; class CSort { public:CSort();~CSort(); public:// 排序算法的具体实现void QuickSort();void Input(); void Output(); private:// 成员变量 int *dataSet; int size; }; CSort::...

宜宾市17182522910: C++类私有成员变量如何赋得值?见下面程序:(不好意思,我没有财富了,没法悬赏,还请大家帮忙回答): -
晁寒银翘: 这个说起来比较啰嗦:1、如果你想在建立对象时想为私有变量分配内存,或是针对这些私有变量进行变量初始化,可以通过默认构造函数,或带参数的构造函数进行,因为构造函数是你在定义对象时自动执行的.所谓默认构造函数,就是不带参数的,你定义不带参数的对象,就是自动调用默认构造函数,定义带参数的对象,该调用什么,自己思考或查资料了.2、如果在构造函数里为变量分配了内存,可以在析构函数里相应的释放内存.3、如果你要在主程序里修改私有变量值,可以重新定义一个成员函数,通过这个成员函数访问私有变量.这不,所有问题都解决了?

宜宾市17182522910: 各位大神速度帮我解答下好么,谢谢了,在线等,C++ -
晁寒银翘: #include#include using namespace std; class point { friend istream&operator>>(istream&is,point&p); friend ostream&operatorpublic: point(double x0=0,double y0=0){x=x0;y=y0;} point(point &); point operator+(const point & pt); double operator^(...

宜宾市17182522910: C++中,私有成员为指向字符串的指针数组!公有函数在调用时出错. -
晁寒银翘: 不应该. 你的代码呢?========================================== 错误是你的words是一个字符指针数组,里面存的是指针,而你接收到的字符串存在w中,这个w是一个局部变量,超出本函数就失效了.所以,words里面的10个字符...

宜宾市17182522910: 哪位C++高手帮帮忙?帮我看看下面这道题 由于我的C++水平很低,所以希望是详解答案 谢谢了. -
晁寒银翘: 结果:001 Deri...

宜宾市17182522910: 我刚学C++有很多问题都不太懂,这是一个C++的程序,哪位高手能帮我讲解一下,请详细一点: -
晁寒银翘: #include <iostream.h>包含库文件,这是C++标准输入输出函数库. #define N 100 宏定义,在程序中N始终为100.int main() 表示main函数的返回值为整型,所以后面要有一个“return 0;”,表示返回数值0;如果改成void main (), 那么最...

宜宾市17182522910: 请教C++中对类的私有成员的访问 -
晁寒银翘: 这是在成员函数定义体内部调用对象的数据成员,是可以被编译器识别并允许的. 就像楼上说的,成员函数都不能调用,那哪里还能访问类的私有成员啊.

宜宾市17182522910: C++高手帮忙进来解答下这道题,谢谢! -
晁寒银翘: 1: for(i=2; i<n; i++)判断素数,只要 2--(n-1)(实际上只需判断到 根号下 n)都不能整除n, n就是素数.2: continue 改成break如果有一个数可以整除n,那么n就不是素数,循环...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网