【发布时间】:2014-10-21 09:34:14
【问题描述】:
我有一个头文件 abc.h
//abc.h
unsigned int *get(void)
{
static unsigned int input[] =
{
1,
2, 2,
4, 5,
6, 7
};
return input;
}
现在,我想将这个输入(来自头文件,而不是来自某个文本文件)读入我的主 cpp 文件,比如 xyz.cpp
我正在考虑使用数组来访问这些元素,但我认为它不会起作用。
int arr[6];
arr=get();
第一个元素是测试用例的数量n,第二个和第三个元素是二维数组的维度,其余元素是二维数组的值。所以我需要输入n的值,行, 2D 数组的列和值 arr[rows][columns]
关于如何实现这一点的任何想法?
编辑:我真的无法弄清楚为什么这个问题被否决了。 我同意这不是一个好的实现,但我得到了一个输入头文件,我只能通过这个头文件读取数据!!
【问题讨论】:
-
不要将函数实现放在头文件中。
-
我同意,但是我已经获得了这个外部输入文件,读取输入的唯一方法是通过这个文件
-
将函数放在头文件中的想法,返回指向私有数据的指针的想法,都表明程序设计存在根本缺陷。您需要指出,编写此代码的人是不称职的,他们的程序需要修复。不要试图通过将这些糟糕的代码包装在更糟糕的代码中来解决这个问题。
-
@techriften - 看起来有错别字,
get()函数返回data但有一个名为input的静态数组:最后一行应该是return input;吗?还是您编辑了一些内容? -
至于否决票,可能是因为您在网站上倾倒了一些未格式化、未缩进、没有意义且无法编译的代码。
标签: c++ c input header-files