一道C++题目,求详解

关于友元的概念错误的是(D)。
A友元函数没有this指针
B调用友元函数时必须在它的实参中给出要访问的对象
C一个类的成员函数也可以作为另一个类的友元函数
D只能在类的公有段声明友元

A 答案 :this指针是在指向类成员本身,但是友元函数并不在类里面,而是在类外面。

B 答案 :友元函数不能直接访问类的成员,只能访问对象成员。所以在实参时要给出访问的对象

C 答案 :一个类的成员函数也可以作为另一个类的友元,但必须先定义这个类

D 答案 :必须在类的说明中说明友元函数,说明时以关键字friend开头,后跟友元函数的函数原型,友元函数的说明可以出现在类的任何地方,包括在private和public部分; 所以D答案是错误的
温馨提示:内容为网友见解,仅供参考
无其他回答

一道C++题目,求详解
编译器在这里只做简单的替换,不会给你自动加括号。所以一般在用宏定义时,最好加上括号,才能得到想要的结果。这这道题改成如下形式,define M(x) (x*x)define N(x,y) (M(x)+M(y))便是写宏定义的规范形式。

c++ OOP题目。求大神。求详解。
答案是:B a(4) - 1 次。这个定义了一个变量a,用4初始化a (可以知道AB类中至少定义了一个成员,该成员可被构造函数初始化)b[3] - 3次。 这个定义了一个数组b,有三个元素,那么b[3]就是初始化了3个AB对象,因此被调用3次。p[2] - 0 次。 这个定义一个指针数组(2个元素的数组...

一道C++题目,求详解
A char str[] \/\/这里没指定长度,就可以由后面的初始化数目决定,所以是对的 B char str[2];长度为2,而后面初始化个数为3,超过数组长度了 C char str[2][3]:这是两行三列的数组,而后面的初始化为三行两列,当然错误了 D char str():这样是声明函数,故后面的赋值当然是错的 ...

一道C++题目,求详解
确实是A。\\t 制表符 \\" 双引号 \\065 八进制ASCII吗65的字符 \\xff 十六进制ff对应字符 \\n 换行符

一道C++题目,求详解
16,因为每次执行循环前m又归1了,所以只计算最后一次,也就是i=‘e'=101的时候;显然等于1+5+4+3+2+1=16

C++白痴问题 求仔细解释 ver 2.0
答案是1 首先&&的优先级比|| 的优先级高 x>=z 即45>=0 成立返回1 y<'z' 即'a' < 'z' 成立返回1 1&&1结果是1 1 或任何的都为1,因此值为1

急!!C++.已知变量a,b,c是整型变量,且a=3、b=4、c=5,则表达式:!(a+b...
答案为1。详解:!(a+b)+c-1 && b+c\/2 等价于 (!(a+b)+c-1) && (b+c\/2)计算机内部计算步骤(可以查看汇编)先算!(a+b)+c-1 ——>0+5-1——>4 测试上一步结果(结果为4),表达式为真。再算b+c\/2——>结果为6(注意4\/2结果为2,因为都是整型,余数丢掉)测试上一步...

请帮忙看看这些c++题,求详细解释
1 A 是字符 和 字符串 2 D s[2]对应的是“tang”,那*s[2]当然就是 t 啦 3 A w>x成立则取值w并结束运算,不成立执行z>y?z:x,判断z>y,它是成立的,所以取值z 4 A 运算符的优先级问题, = 要优先于 , 运算 5 c a>=b是成立的,它返回true,转换成int类型与c比较,是...

C++选择题1 求详解
x是int(整形)y是float(单精度浮点型) y*100=516.347+0.5(这是四舍五入的表示)=516.847赋值给x,x是整形,所以是516,y=x\/100.0=5.1600 选B

C++金字塔求详细解释,谢谢!
:其实你只要理解他们逐层递减或者递增的规律即可。include <stdio.h> int main(){ int n;int i,j;printf("输入金字塔层数:");scanf("%d",&n);for(i=1;i<=n;i++) \/\/for控制层数,有n层。每一层包含3个for。i代表层数 { for(j=0;j<n-i;j++) \/\/for控制每层空格的数量,第...

相似回答