gpt4 book ai didi

c++ - 根据字符串中的变量名赋值

转载 作者:行者123 更新时间:2023-11-30 04:11:29 37 4
gpt4 key购买 nike

奇怪的问题,很难说,但可以说我有一个 2 个文件,其中有一串双变量将出现在顶部的文件中,然后是相应的双变量,例如:

文件 1 =

A B C D E
1.2 3.4 4.5 5.6 7.8

文件 2=

B D E
9.8 7.6 5.4

我有一个 double 结构

struct numb{
double A,B,C,D,E};

是否可以读取文件 1 (A B C D E) 中的字符串,无论字符串中的第一个值是 (A) 将其分配给相应的结构值 numb.A。

因此下一个文件将读取字符串 (B) 的第一个值并将其分配给 numb.B。我意识到这可以通过一堆 if 语句来实现,但我想知道是否有更简单的方法。最难的部分是变量字符串总是 A、B、C、D、E 的某种组合。我正在用 C++ VS10 编程

最佳答案

您可以创建一个映射,其中要解析的字符串作为键,pointer to member结构的相应属性作为值。

std::map<std::string, double numb::*> mapLetterToCorrespondingAttribute;

然后解析你的文件,并将值赋给你映射中的值指向的对应成员,对应的键是你解析的字母。

在你说你不明白之前多读一遍:D

关于c++ - 根据字符串中的变量名赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20221730/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com