22问答网
所有问题
当前搜索:
cpp友元函数
为什么
友元函数
不能直接访问类中的私有成员
答:
这个错误是:未声明的标识符'PI'前面的PI是类Point的私有成员,是是不可见的 你声明的Area只是一个普通的
函数
不是
友元
所以不可以访问任何类的私有成员 π是一个普世常量 通常都用宏定义比较好
...比如有两个源文件一个 A.
cpp
和一个B.cpp现在A.cpp要调用B.cpp中H类...
答:
如果这个print方法不是static的,你只能先定义一个H类的对象,然后通过对象名来调用,不过通常不会这样做。所以如果你想调用的话,建议你把print声明为static的,然后你就可以H::print这样子调用它。或者试试能不能把print声明为普通的全局函数,然后要使用它的类把它声明为
友元函数
。
C++ 中什么样的
函数
可以作为虚函数
答:
4.友元函数:友元函数不属于类的成员函数,不能被继承
。对于没有继承特性的函数没有虚函数的说法。5.普通函数:普通函数不属于成员函数,是不能被继承的。普通函数只能被重载,不能被重写,因此声明为虚函数没有意义。因为编译器会在编译时绑定函数。三,哪些函数可以成为虚函数呢?1.普通的成员方法是...
急急急!两道道C++题 高分 一小时内给出正确答案 追加高分!!!
答:
1.定义Boat与Car两个类,两者都有weight属性,定义二者的一个
友元函数
getTotalWeight(),计算二者的重量和。/ include <iostream> using std::cin;using std::cout;using std::endl;class Car;class Boat { public:Boat(double w = 0): weight(w) { } friend double getTotalWeight(const Boa...
...定义一个圆柱类,计算圆柱的面积和体积。 要求:用
友元函数
来求...
答:
double height; };#endif---Cyclinder.
cpp
---#include"Cyclinder.h"Cyclinder::Cyclinder():radius(0),height(0){}Cyclinder::Cyclinder(double radius,double height):radius(radius),height(height){}double volume(const Cyclinder&c){ return 3.14*c.radius*c.radius*c.height;}double su...
...1)分别用成员函数和
友元函数
计算圆的面积和周长: (2)用拷贝函数初...
答:
circle.
cpp
include "circle.h"static const double pi = 3.14;Circle::Circle(double r){ this->r = r;}Circle::~Circle(){}Circle::Circle(const Circle &cricle){ this->r = cricle.r;}double Circle::count_area() const{ return pi * r * r;}double Circle::count_are...
C++错误之INTERNAL COMPILER ERROR
答:
这有可能是与编译器内部的一些
函数
名相同,把这些函数名改下就行了。另外,还有一些错误:1、将 void print()改为void complex::print()2、将 complex c1(2.3,4.6),c2(3.6,2.8),c3;改为 complex c1(2.3f,4.6f),c2(3.6f,2.8f),c3;因为c++中实数默认为double,而real,image为...
求一C++程序:计算点到直线的距离?
答:
class Line;//声明类Line,因为Point类中声明
友元函数
friend dist(Point P,Line L)用到该类 class Point { private:double x;double y;public:Point(double xx=0,double yy=0){ x=xx;y=xx;} friend double dist(Point P,Line L);};class Line { private:double a;double b;double c;publ...
请教关于C++中重载的问题3
答:
vc++6.0编译器申明
友元
时, 需要前向申明:class complex;complex operator +(complex&,complex&);comolex operator +(int i,complex&);complex operator +(complex&,int i);加在类定义的前面就可以了。
请高手帮忙,这个cannot access private member是什么错误?…
答:
/*你用的VC6.0吧, 他对
友元函数
的实现支持的不是很好, 有时会出一些问题, 比如,这题, 类友元函数可以访问类的私有变量, 但是这里却出现了不能访问的错误, 修改的办法一个是写两个类的成员函数getA(),和getB(), 还有一个就是把重载<<函数的实现放到类定义中, 如下:class complex {...
1
2
3
涓嬩竴椤
其他人还搜
友元函数是不是类的成员函数
c友元函数
友元函数可以被声明为const
友元函数的使用
友元函数怎么定义
定义友元函数
友元函数声明
友元函数的优点
友元函数有什么作用