在结构数组中设置多行错误

Posted

技术标签:

【中文标题】在结构数组中设置多行错误【英文标题】:Set multi line error in struct array 【发布时间】:2015-08-23 19:17:38 【问题描述】:

我想用 C++ 创建一个模块系统。以下是我的程序,没有问题。

void First_Modules()

    // Anything ...


void Second_Modules()

    // Anything ...



typedef void(*Func) ();

struct All_Modules

    char *Name;
    Func This_Function;
;

struct All_Modules Load_All_Functions[] =  "Load_Modules_1", First_Modules , "Load_Modules_2", Second_Modules ;

我的问题是我想在不使用的情况下将模块信息发送到 Load_All_Fu​​nctions

struct All_Modules Load_All_Functions[] =  "Load_Modules_1", First_Modules , "Load_Modules_2", Second_Modules ;

我想要这样的东西:

struct All_Modules Load_All_Functions[] =  "Load_Modules_1", First_Modules ;

struct All_Modules Load_All_Functions[] =  "Load_Modules_2", Second_Modules ;

(拆分每个集合进程)。但是当我尝试运行它时,我看到了这个错误 'Loads': redefinition; different basic types

我该怎么办?我不想用

struct All_Modules Load_All_Functions[] =  "Load_Modules_1", First_Modules , "Load_Modules_2", Second_Modules ;

我想设置每个完整的单独像

struct All_Modules Load_All_Functions[] =  "Load_Modules_1", First_Modules ;

struct All_Modules Load_All_Functions[] =  "Load_Modules_2", Second_Modules ;

我该怎么办?我希望每个模块都有函数名称并在程序的每个位置加载它。

【问题讨论】:

这个问题的措辞非常难以阅读和“不受欢迎”。如果您希望得到正确的答案,请整理您的想法,然后提出问题。 根本问题是什么?你不想把所有的东西都放在一条线上,你不想一次做所有的事情,或者你事先不知道函数的数量?还是别的什么? 目标是一次加载多个模块吗? 类似的东西.....我想要每个模块的函数名并在程序的每个位置加载它 【参考方案1】:

在这种情况下,不需要声明结构数组

如果程序是用 C 编写的,请尝试以下操作

struct All_Modules Load_All_Functions;

Load_All_Functions = ( struct All_Modules )"Load_Modules_1", First_Modules ;

Load_All_Functions = ( struct All_Modules )"Load_Modules_2", Second_Modules ;

在 C++ 中你可以编写

struct All_Modules Load_All_Functions;

Load_All_Functions = "Load_Modules_1", First_Modules ;

Load_All_Functions = "Load_Modules_2", Second_Modules ;

考虑到在 C++ 中数据成员 name 必须声明为

const char *Name;

如果您打算使用字符串文字作为初始值设定项。

【讨论】:

重新定义;多次初始化 @user216085 您使用的是 C++ 还是 C 代码?例如 C++ 代码编译成功。 @user216085 复制并粘贴我写的内容。 此声明没有存储类或类型说明符 @user216085 您无法复制和粘贴代码吗?

以上是关于在结构数组中设置多行错误的主要内容,如果未能解决你的问题,请参考以下文章

如何在反应原生 mobx 中设置数组值?

如何在 jsonobject 中设置数组值

如何在结构数组中设置统一值?

减少数组以在 Swift 中设置

在docker compose yml文件中设置环境变量时找不到文件错误

在reactjs中设置嵌套元素的状态,多级数组[重复]