我刚刚开始编程,所以如果我现在说一些愚蠢的话,不要太苛刻...... 我在C ++中尝试制作的是一个代表图形的类。每个图都有其节点列表,这是它自己的类。问题是我想让类“node”的某些成员成为私有的,因此它们不能从例如main函数访问,但是,我想让它们在graph类中可访问。类节点本身应该可以在类图之外访问。这可能吗?
答案 0 :(得分:1)
假设您的节点有一个类Node
,图表有一个类Graph
。
您可以像下面的示例一样制作Graph
类friend
的{{1}}类Node
:
#include <iostream>
class Node {
friend class Graph;
//...
std::size_t id;
public:
Node(std::size_t const _id) : id(_id) {}
//...
};
class Graph {
//...
public:
Graph(Node const &node) { std::cout << "Look! I can access input node its id is " << node.id << std::endl; }
//...
};
int main() {
Node n(1);
Graph G(n);
}