VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 840|回复: 6

[已解决]MFC 实现计算器加法

[复制链接]
63_avatar_middle
最佳答案
0 
在线会员 发表于 2021-7-23 22:14:40 | 显示全部楼层 |阅读模式
使用MFC 实现计算器的加法功能,结果输出结果都是0.MFC 实现计算器加法
我觉得是我等于号部分的函数没有写对,代码如下。
void CCalculatorbyEYLDlg::Calculator()
{
        UpdateData(TRUE);
        mNum2 = _wtof(mStr);
        double result =0.0f;
       
        switch (mFlag)
        {
        case Flag_JIA:
                result = mNum1+mNum2;
                mTempStr = mTempStr + _T("+") + mStr + _T("=");
                break;
       

        }
        if (result = int(result) <= 1e-5)
        {
                mStr.Format(L"%d", int(result));
        }
        else
        {
                mStr.Format(L"%f", result);
        }
        mTempStr += mStr;
        mStr9 = mStr8;
        mStr8 = mStr7;
        mStr7 = mStr6;
        mStr6 = mStr5;
        mStr4 = mStr3;
        mStr3 = mStr2;
        mStr2 = mStr1;
        mStr1 = mTempStr;
        UpdateData(FALSE);
        mNum1 = result;
        mNum2 = 0.0f;

}

整个工程文件见附件。感谢各位大佬,帮我指正。

最佳答案
74_avatar_small
2021-7-25 16:46:03
我爱机械 发表于 2021-7-25 10:03
啊 这 我分不清 纯小白

就是说,你为了解决问题而需要写程序,你的这个问题如何解决,就是解决方案最终发布的程序。一个解决方案可以包含多个项目,比如说主程序(可能是*.exe),动态链接库(*.dll),不同的类型不能在同一个项目下生产,所以需要多个项目。

你打包的只是解决方案,解决方案是Visual Studio提供的一种用于描述这个工程(就是为了解决问题发起的探索过程,大致是这个意思吧……)包含的项目文件,而实际上,代码和具体生成配置都是在项目文件里的。

你看下图,我为了解决某个问题,建立了一个解决方案,后缀为.sln
MFC 实现计算器加法

然后上边的文件夹就是这个解决方案里的一个项目(可能有多个),打开里边会有项目文件。我这里是C#的项目,所以后缀是.csproj,这个才是项目的文件。但是要知道,这并不意味着这你的代码在这个文件里,而是在与项目文件同目录的文件夹下,也就是项目文件上方的.cs文件,但同样,因为是C#项目,所以是.cs(因为某种原因,这台电脑新买的,没写过C++项目,但事实上我还是主要学习C++项目的)。我记得C++的话项目文件后缀是.vcxproj
MFC 实现计算器加法
一般情况下,大致的框架是这样。这个需要你自己去探索和总结,积累经验了。
MFC 实现计算器加法

Calculator by EYL.rar

491 Bytes, 下载次数: 4





上一篇:Socket 编程 TCP 跨机通信
下一篇:如何解决mfc程序一按Enter就退出?
74_avatar_middle
最佳答案
7 
在线会员 发表于 2021-7-24 15:38:56 | 显示全部楼层
悄悄问一下,您是不是只打包了解决方案?打开没有项目啊?
00_avatar_middle
最佳答案
13 
在线会员 发表于 2021-7-24 16:24:20 | 显示全部楼层
本帖最后由 oyxbl 于 2021-7-24 16:31 编辑

.cpp和.h被你吃了吗MFC 实现计算器加法MFC 实现计算器加法


del *.ncb /f /s
del *.plg /f /s
del *.pch /f /s
del *.idb /f /s
del *.ilk /f /s
del *.pdb /f /s
del *.obj /f /s
del *.exp /f /s
del *.aps /f /s
del *.opt /f /s
del *.sdf /f /s
del *.ipch /f /s
del *.tlog /f /s
del *.iobj /f /s
del *.ipdb /f /s
del *.tmp /f /s

在.sln同级目录新建记事本把上面的东西复制进去.
改名<清理项目垃圾.bat>
运行一下,项目体积变为1%
你可能用的上
MFC 实现计算器加法
63_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2021-7-25 10:03:45 | 显示全部楼层
User_Ghost 发表于 2021-7-24 15:38
悄悄问一下,您是不是只打包了解决方案?打开没有项目啊?

啊 这 我分不清 纯小白
63_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2021-7-25 10:05:00 | 显示全部楼层
oyxbl 发表于 2021-7-24 16:24
.cpp和.h被你吃了吗

谢谢 大佬 虽然我看懂 但是觉得很厉害
74_avatar_middle
最佳答案
7 
在线会员 发表于 2021-7-25 16:46:03 | 显示全部楼层    本楼为最佳答案   
bestAnswer
我爱机械 发表于 2021-7-25 10:03
啊 这 我分不清 纯小白

就是说,你为了解决问题而需要写程序,你的这个问题如何解决,就是解决方案最终发布的程序。一个解决方案可以包含多个项目,比如说主程序(可能是*.exe),动态链接库(*.dll),不同的类型不能在同一个项目下生产,所以需要多个项目。

你打包的只是解决方案,解决方案是Visual Studio提供的一种用于描述这个工程(就是为了解决问题发起的探索过程,大致是这个意思吧……)包含的项目文件,而实际上,代码和具体生成配置都是在项目文件里的。

你看下图,我为了解决某个问题,建立了一个解决方案,后缀为.sln
MFC 实现计算器加法

然后上边的文件夹就是这个解决方案里的一个项目(可能有多个),打开里边会有项目文件。我这里是C#的项目,所以后缀是.csproj,这个才是项目的文件。但是要知道,这并不意味着这你的代码在这个文件里,而是在与项目文件同目录的文件夹下,也就是项目文件上方的.cs文件,但同样,因为是C#项目,所以是.cs(因为某种原因,这台电脑新买的,没写过C++项目,但事实上我还是主要学习C++项目的)。我记得C++的话项目文件后缀是.vcxproj
MFC 实现计算器加法
一般情况下,大致的框架是这样。这个需要你自己去探索和总结,积累经验了。
MFC 实现计算器加法
63_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2021-7-25 19:52:52 | 显示全部楼层
User_Ghost 发表于 2021-7-25 16:46
就是说,你为了解决问题而需要写程序,你的这个问题如何解决,就是解决方案最终发布的程序。一个解决方案 ...

十分感谢 我已经有点明白了 等我再学学积累下经验
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号-4 )|网站地图wx_jqr

GMT+8, 2023-9-29 11:06

Powered by CcTry.CoM

© 2009-2021 cctry.com

快速回复 返回顶部 返回列表