C++ 在另一个类中声明一个类成员
我正在尝试让另一个类的某个类中有一个成员: 我有一个博客类和朋友类以及一个博客指针类 我尝试了下面的代码:C++ 在另一个类中声明一个类成员,c++,objective-c,class,declaration,C++,Objective C,Class,Declaration,我正在尝试让另一个类的某个类中有一个成员: 我有一个博客类和朋友类以及一个博客指针类 我尝试了下面的代码: friends :: blog_pointer * blogFriend; 在类的函数中是否有类似于原型的东西? 编译器,构造函数或析构函数除外 friend关键字仅授予对其他类私有数据成员的访问权。不能在好友类中声明其他类的其他成员 矩形.h class Rectangle { int width, height; public: int area () {retu
friends :: blog_pointer * blogFriend;
在类的函数中是否有类似于原型的东西?
编译器,构造函数或析构函数除外 friend关键字仅授予对其他类私有数据成员的访问权。不能在好友类中声明其他类的其他成员 矩形.h
class Rectangle {
int width, height;
public:
int area ()
{return (width * height);}
void convert (CSquare a);
};
Square.h
class Square {
private:
int side;
public:
void set_side (int a)
{side=a;}
friend class Rectangle;
};
矩形.cc
void Rectangle::convert (Square a) {
width = a.side;
height = a.side;
}
main.cc
int main () {
Square sqr;
Rectangle rect;
sqr.set_side(4);
rect.convert(sqr);
}
在不使用friend关键字的情况下,您可以访问convert方法中的a.side
但我不确定你在问什么?如果您只想使用另一个类,可以执行以下操作
下一季度
class NextSquare {
private:
int side;
public:
void set_side (int a)
{side=a;}
friend class Rectangle;
class Rectangle* aRecInASquare;
};
现在,您可以在NextSquare中访问矩形的数据您可以转发声明类或“原型”类,如下所示:
class B;
class A {
public:
B b;
};
class B {
public:
A a;
};
我发现很难弄明白你的问题是什么。请发布博客、朋友和博客指针的定义。此外,张贴您尝试时收到的任何错误消息。