【发布时间】:2016-08-31 02:24:53
【问题描述】:
我正在尝试编写神经网络。我以前用其他语言做过,并且使用过矩阵库;但是,我想自己制作,以便更好地理解它们。但是我的课程遇到了问题。
我正在用 C++ 做这个。
我有一个叫做 ANN 的课程。它有一个层向量。 层是一个名为 Node 的类。 但是,在节点内我想访问上一层节点,所以我可以计算这个节点的值。
我知道我是否有一个类,并且我希望它的一个成员本身就是一个指针。 例如。
class Node{
public:
// Public methods/members here
private:
Node *previousNode;
}
然而,这不是我想要的。
我希望*previousNode 成为节点的祖先
这是我想要的一个例子
class Node{
public:
//Public functions/members here
private:
vector <Node*> previousLayer;
}
现在我听说在这种情况下使用智能指针会更好。我不完全知道那是什么,我知道它基本上是管理它们的指针的包装器。我还认为使用智能指针的主要原因是因为一些指针在使用后被保留为 NULL 或未被删除,但我认为这并不重要,因为此类的范围只能在程序结束时结束。
我的问题是如何实现一个指向该向量所在类的指针向量。
【问题讨论】:
标签: c++ class pointers vector smart-pointers