(C )创建可以从功能访问的动态全局数组/向量
(C++) Create dynamic global array/vector that can be accessed from functions
我正在为地牢游戏编写代码。地牢是一个平方的字符阵列。在实际版本中,以" #define"声明数组的大小和敌人的数量等宽度,敌人的数量...问题是我不知道如何以用户输入大小的方式来声明数组,同时,数组为 global ,并且所有功能i都可以访问使用(#define(写。我对任何不涉及重写所有功能的建议开放:(
**目前,数组的声明为:
#define WIDTH 20
#define HEIGHT 20
char dun[HEIGHT][WIDTH];
**链接到代码:https://github.com/zashuiba/the-dungeon-game/blob/master/master/dungeon/dungeon/dungeon.cpp
#include <vector>
您可能需要使用std::vector
类。这是一个快速草稿代码:
size_t width = 20;
size_t height = 20;
std::vector< std::vector<char> > dun;
void init_array()
{
dun.resize(height);
for (size_t i = 0; i < height; ++i)
dun[i].resize(width);
}
使dun成为向量的向量
#include<vector>
std::vector<std::vector<char>> dun; //global variable
//In your input function
input_from_user()
{
int Height = getHeight();
int width = getWidth();
dun.clear();
for(int i = 0 ; i < Height ; ++i)
{
std::vector<char> createdVector(Width);
dun.push_back(createdVector);
}
}
现在,您可以在使用2 Dimentional Char数组时使用DUN,因为下标操作员对STD :: vector
相关文章:
- 为什么在全局范围内使用"extern int a"似乎不行?
- g++用户定义的动态链接库上的全局new和delete运算符
- 如何在C++中动态分配全局字符数组中的类实例?
- 英特尔并行工作室 2015 C++中的 2D 动态分配全局阵列
- (C )创建可以从功能访问的动态全局数组/向量
- 如何动态分配全局 int*?
- 保证非 odr 使用的全局变量的延迟动态初始化
- 如何访问从C 编译的动态库中定义的全局变量
- C++中的全局动态Allcoated变量
- 动态链接共享库中的全局变量和静态变量会发生什么情况
- 非静态全局对象与指向动态对象的全局指针
- 如何在C++中动态分配全局二维数组
- c++中全局动态分配的结构
- 动态内存与全局变量相当吗
- 在Linux上,静态变量和全局变量在动态库和静态库中显示不同的地址
- CUDA动态并行性:使用纹理内存时无效的全局写入
- 动态分配位于动态分配的结构数组内的全局数组
- 在c++中,全局动态分配的数组对不同的输入给出不同的结果
- 在C++中实现全局变量和静态成员变量的动态初始化
- 在函数内部创建全局动态数组