我正在寻找一个例子或解释为什么有人应该使用或不使用C/C++中的三重指针.是否存在三指针出现的源代码?
提前致谢.
编辑:特别是我正在寻找使用三重指针的源代码.
当我用Java编写构造函数时,如下所示:
import java.io.IOException;
import java.io.OutputStream;
public class MultiOutputStream extends OutputStream{
OutputStream[] oStream;
public MultiOutputStream(OutputStream oStream) {
this.oStream = oStream;
// TODO Auto-generated constructor stub
}
@Override
public void write(int arg0) throws IOException {
// TODO Auto-generated method stub
}
}
Run Code Online (Sandbox Code Playgroud)
Eclipse现在说:类型不匹配:无法从OutputStream转换为OutputStream [].所以Eclipse修正了我的构造函数,如下所示:
import java.io.IOException;
import java.io.OutputStream;
public class MultiOutputStream extends OutputStream{
OutputStream[] oStream;
public MultiOutputStream(OutputStream... oStream) {
this.oStream = oStream;
// TODO Auto-generated constructor stub
}
@Override
public void write(int arg0) throws IOException {
// TODO Auto-generated method …Run Code Online (Sandbox Code Playgroud) 我很难弄清楚如何在以下类型的地图中插入元素.鉴于:
std::map<Node*, std::vector<pair<Edge*, Node*> > > adjacencyMap;
Run Code Online (Sandbox Code Playgroud)
,结构Node和Edge结构.我想创建一个图表,两个节点之间的每个连接都应存储在此映射中.每个节点可以与另一个节点建立多个连接.主要思想是,对于每个节点,可以存在边对和节点对的列表,例如
node1 and node2 are connected through an edge12
node1 and node3 are connected through an edge13
Run Code Online (Sandbox Code Playgroud)
本adjacencyMap想
node1 -> [(edge12, node2), (edge13, node3)]
node2 -> [(edge12, node1)]
node3 -> [(edge13, node1)]
Run Code Online (Sandbox Code Playgroud)
我知道如何插入一个元素,(node1, pair(edge12,node2))但我不知道如何插入,如果(node1, pair(edge12,node2))已经是一个元素,(node1, pair(edge13, node3))那么
node1 -> [(edge12, node2), (edge13, node3)].
Run Code Online (Sandbox Code Playgroud)
我怎样才能实现自己的意图?
提前致谢!