类的enum里添加了一个新项,从函数获得的值是乱码值,不是我在UI中输入的值。

qq_65364446 2024-12-11 11:21:52

 我是在github上找到了一个大型的应用软件FEBioStudio和FEBio的开源代码,想要修改代码。
原代码的下载链接:
GitHub - febiosoftware/FEBioStudio
GitHub - febiosoftware/FEBio: FEBio Suite Solver

 


情况描述:

我在源代码的某个构建模型并且生成模型的渲染立体的代码的其中的一个类的enum里添加了一个新项,
并且对应地在这个类里添加了新项对应的变量。
实际使用时是通过用户在UI中输入值,代码从一个函数把这个值赋给对应的项。
但是,源代码中的项都能正常使用,但是我添加的新项从函数获得的值是乱码值,不是我在UI中输入的值。

 

问题:

我确实把新项完全对应源代码的项的代码添加的,
请问这是为什么?是有关qt,还是c++代码的问题?

到底是什么导致的啊?

最重要的是,应该怎么解决呀?

 

代码如下:

 

文字代码:

#pragma once
#include "FEMultiQuadMesh.h"
 
class GThinTube;
 
class FEShellTube : public FEMultiQuadMesh
{
public:
    // enum {T, NDIV, NSTACK, ELEM_TYPE}; 这是源代码
    enum {T, NDIV, NSTACK, ELEM_TYPE, R}; // 这是我加上了个 R 的新项
 
public:
    FEShellTube(){}
    FEShellTube(GThinTube* po);
    FSMesh* BuildMesh();
 
    bool BuildMultiQuad() override;
 
protected:
    GThinTube* m_pobj;
 
    double    m_t;
    int        m_nd, m_nz;
    double m_r;                             // 这是我加上了 R 的新项对应的变量
};
#pragma once
#include "FEMultiQuadMesh.h"
 
class GThinTube;
 
class FEShellTube : public FEMultiQuadMesh
{
public:
    // enum {T, NDIV, NSTACK, ELEM_TYPE}; 这是源代码
    enum {T, NDIV, NSTACK, ELEM_TYPE, R}; // 这是我加上了个 R 的新项
 
public:
    FEShellTube(){}
    FEShellTube(GThinTube* po);
    FSMesh* BuildMesh();
 
    bool BuildMultiQuad() override;
 
protected:
    GThinTube* m_pobj;
 
    double    m_t;
    int        m_nd, m_nz;
    double m_r;                             // 这是我加上了 R 的新项对应的变量
};

 

...全文
416 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

你怎么对应的,没看到相关代码。
枚举值实际上是整型,enum {T, NDIV, NSTACK, ELEM_TYPE, R};这里没有指定每个值,所以默认T..R对应0、1、2、3、4,“代码从一个函数把这个值赋给对应的项”,要看它的函数内部是否限定了范围,导致4不会被转换。

forever74 2024-12-11
  • 举报
回复
@日立奔腾浪潮微软松下联想 回顾一下,大约是智能手机普及之后,初学程序设计的部分人士似乎有一种玄学思路,认为某些事情应该会“自动”发生。也许这个是游戏的世界观,角色的某个进度条数据积累够了,就“自动”进入下一级。
forever74 2024-12-12
  • 举报
回复
@qq_65364446 如果您看到了嘲笑,我表示抱歉。请您嘲笑一下嘲笑然后继续奋勇前进。
qq_65364446 2024-12-13
  • 举报
回复
@forever74 好的。抱歉,我真的很讨厌别人阴阳怪气。解决不出来时我忍不住你,就会比较暴躁。
1条回复

65,195

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧