求助
  • 板块灌水区
  • 楼主absolute_value
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/10/13 07:45
  • 上次更新2024/10/13 11:12:12
查看原帖
求助
1067907
absolute_value楼主2024/10/13 07:45

RT,迭代器player对应的值在调用类DyadicArray下的函数Clear()时被覆盖为零了

#include<iostream>
#include<time.h>
#include<windows.h>
#include<math.h>
#include<list>
#define keyDown(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x800000) ? 1 : 0)
template<typename T1> class DyadicArray {
	public:
		int width;
		T1 a[100000000];
		bool Clear() {
			memset(a, 0, sizeof(a));
			return true;
		}
};
DyadicArray<COLORREF> cmap;
std::list<double> entity;
std::list<double>::iterator Spawn(std::list<double> &a) {
	a.push_back(0);
	return a.end();
}
std::list<double>::iterator temp[3] = Spawn(entity);
std::list<double>::iterator player = Spawn(entity);
bool Calculate() {
	if(keyDown(VK_SPACE)) {
		*player += 1;
	}
	std::cout << *player << '\n';
	return true;
} 
int main() {
	while(1) {
		Calculate();
		cmap.Clear();
		Sleep(1);
	}
	return 0;
}
2024/10/13 07:45
加载中...