关于一个极其奇怪的问题
  • 板块学术版
  • 楼主Zxc200611
  • 当前回复4
  • 已保存回复4
  • 发布时间2021/7/1 22:39
  • 上次更新2023/11/4 20:26:35
查看原帖
关于一个极其奇怪的问题
175586
Zxc200611楼主2021/7/1 22:39

RT,写数据结构题时,写了下面的结构体和函数:

	struct node
	{
		int ch[2];
		int lst;
	};
	vector<node> t;
	inline
	int newnode(int lst)
	{
		t.push_back((node){{0,0},lst});
		return t.size()-1;
	}

如果这么调用:

	int p=newnode(pos);
	t[u].ch[k]=p;

就是对的。

如果这么调用:

	t[u].ch[k]=newnode(pos);

就会出现问题:某些情况下,在 newnodet.size()-1 的值正确,但赋值后 t[u].ch[k] 却是 00

已经遇到过很多次这样的问题了,求解释这个问题发生的原因或解决方法

2021/7/1 22:39
加载中...