我是看着黑马程序员的视频中制作员工管理系统写出的代码,在中间出现的一些问题。

其实这是我个人的疏忽,出现的问题和解决办法如下:

出现的问题:代码问题

void workManager::addEmp()
{
    cout << "请输入添加的员工的数量" << endl;
    int addNum;
    cin >> addNum;
    if (addNum>0)
    {
        //计算现在的人数
        int newSize = addNum + this->m_num;
        //动态数组存储,储存了多个指向worker类型变量的指针
        worker* *newSpace= new worker * [newSize];//开辟对象数组的方法
        //将原来的所有职工拷贝到新数组下
        if (this->m_empArray != NULL)
        {
            for (int i = 0; i < this->m_num; i++)
            {
                newSpace[i] = m_empArray[i];
            }
        }
        for (int i = 0; i < addNum; i++)
        {
            int id;
            string name;
            int dept;
            cout << "请输入第" << i + 1 << "个员工的编号(纯数字编号)" << endl;
            cin >> id;
            cout << "请输入第" << i + 1 << "个员工的姓名" << endl;
            cin >> name;
            cout << "请输入第" << i + 1 << "个员工的部门(职责)" << endl;
            cout << "1、普通员工" << endl;
            cout << "2、经理" << endl;
            cout << "3、老板" << endl;
            cin >> dept;
            worker* work = NULL;
            switch (dept)
            {
            case 1:
                employee(id, name, dept);//在这里,我忘记更改work指针的指向了,后面三个同理
                break;
            case 2:
                manager(id, name, dept);
                break;
            case 3:
                boss(id, name, dept);
                break;
            default:
                cout << "部门职责选择无效" << endl;
                break;
            }
            //将指针拷贝到指针数组中来
            newSpace[this->m_num + i] = work;
        }
        //释放原有空间
        delete this->m_empArray;
        //创建新空间
        this->m_empArray = newSpace;
        //更新人数
        this->m_num = newSize;

this->fileIsEmpty = false;
        //this->save();
        //提示
        cout << "成功添加" << addNum << "个新职工" << endl;
        system("pause");
        system("cls");
    }
    else
    {

}
}

解决办法如下:

case 1:
               work=new employee(id, name, dept);//在堆区开辟内存空间存储数据即可
                break;

0x0041C580 处(位于 基于多态的职工管理系统.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000024 时发生访问冲突。的解决方案相关推荐

  1. 0x0046E5FB 处(位于 基于多态职工管理系统.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000024 时发生访问冲突。

    看黑马程序员的职工管理系统 -文件交互-写文件这个视频出现以上的错误. 修改方法: this->save();放在for里面了 直接拽出来

  2. 0x00D2DCAC 处(位于 Company.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000024 时发生访问冲突。

    上面的意思就是你吧值付给了不该赋给的变量,或者说你把值付给了不能付给的变量(或者常量) (1)最简单也最直接的错误可能就是scanf()的问题,我们都知道输入的时候都是scanf("%格式& ...

  3. (xxx.dll)处(位于xxx.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000003F 时发生访问冲突。已解决。

    下面两个这种类型的报错都一样.(跟xxx.dll和xxx.exe都没关系) 0x794CECC1 (Qt5Cored.dll)处(位于 xxx.exe 中)引发的异常: 0xC0000005: 读取位 ...

  4. 0x774B9E37 (KernelBase.dll)处(位于 LogonServer.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000000 时发生访问冲突解决

    网狐大联盟核心服务数据解锁函数访问冲突,报错: 0x774B9E37 (KernelBase.dll)处(位于 LogonServer.exe 中)引发的异常: 0xC0000005: 读取位置 0x ...

  5. 0x5085170C (ucrtbased.dll)处(位于 Project1.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000001A 时发生访问冲突。

    此处为非"%s" 类型数据以"%s"类型打印错误. #include <stdlib.h> #include <stdio.h> #if ...

  6. 0x00007FFA837F2487 (ucrtbased.dll)处(位于 指针.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000000000000068 时发生访问冲突

    大佬们 运行完就是这样了,这个该怎么办呀.

  7. 0x00007FFD977C04A8 (Qt5Sqld.dll)处(位于 a.exe 中)引发的异常: 0xC0000005: 读取位置 0x0000000000000010 时发生访问冲突

    今天在修改别人代码的时候出现了一个问题: 我想要在子线程中使用 QSqlDatabase::addDatabase("QMYSQL"); 但是,怎么都运行不过去. 我调试,想找出问 ...

  8. 解决:0x00007FFF02B86981 (kernel32.dll)处(位于 .exe 中)引发的异常: 0xC0000005: 读取位置 0x00007FFEC1C722A8 时发生访问冲突。

    此异常定位在断点的语句为 if (!_CrtIsValidPointer(pHead->szFileName, 1, FALSE) || IsBadReadPtr(pHead->szFil ...

  9. 0x00007FFFE5B1F753 (Qt5Guid.dll)处(位于 p1.exe 中)引发的异常: 0xC0000005: 读取位置 0x00000224BA33C072 时发生访问冲突# 欢

    opencv_QT 读取视频后,开始播放视频,取帧处理帧的时候,在转换图像格式的时候出错,求问这是为什么呀??

最新文章

  1. 职场小窍门:看穿同事性格的16个小动作
  2. Gartner2018新兴技术成熟度曲线:人机界线日益模糊!
  3. android studio n3710,英特尔奔腾N3710性能跑分和评测 | ZMMOO
  4. 世界十大最有价值公司(1997-2019)
  5. AOP——基于AspectJ的注解来实现AOP操作
  6. mysql事件创建_mysql 创建事件
  7. 的table数据重复添加_Excel中的超级表Table详细介绍(一)
  8. 麦克纳姆轮运动原理_光是怎样被证明是电磁波的?麦克斯韦超凡的数学统一电学和磁学!...
  9. linux mysql库文件路径设置_MySQL_linux修改mysql数据库文件的路径,mysql更改数据文件的存放路径 - phpStudy...
  10. 用三维Demo看懂各种优化算法,还有C++程序员福音
  11. Python绘制KS曲线
  12. 单点登录SSO的实现原理与方案详解
  13. LINUX下载编译OpenAL Soft
  14. 深度Linux安装火狐,deepin或Ubuntu安装最新版Firefox,并设置去掉标题栏
  15. 【奥特曼迪迦表情包】
  16. 技术笔记:Wordpress建站,解决无法外网访问的方法
  17. 本想搞清楚ESM和CJS模块的互相转换问题,没想到写完我的问题更多了
  18. equestresponseservletContext
  19. 黑马Python数据分析网课个人笔记01
  20. HDU 4808 数学 期望 积分

热门文章

  1. EditThisCookie - 谷歌浏览器cookies管理插件
  2. 手机自带计算机没有删除桌面找不到了,请问,怎么卸载桌面没有图标的软件,用完美卸载也找不到?...
  3. 开关稳压器的种类和工作原理介绍
  4. Python plt.plot画图
  5. MySQL 是怎样运行的:从根儿上理解 MySQL
  6. 生信科技爱好者祝大家元宵快乐!
  7. java for循环创建线程_Java创建线程的两种方法
  8. matlab并行fft实现,matlab fft实现相关
  9. 十六进制颜色码简单科普
  10. CF 853A Planning