当前位置: 首页 > news >正文

CodeBlocks定义异常:multiple definition of 和 first defined here

基于链表实现贪吃蛇案例时候,在CodeBlocks的CPP源文件定义函数和全局变量均报错

异常现象

  • 在**自定义的cpp**文件定义全局变量、对象、函数等均出现重复定义和首次定义
multiple definition of `Controller::showCopy()
first defined here 

在这里插入图片描述

异常解决方案

在这里插入图片描述

正确代码

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_project_file><FileVersion major="1" minor="6" /><Project><Option title="实训-数据结构" /><Option pch_mode="2" /><Option compiler="gcc" /><Build><Target title="Debug"><Option output="bin/Debug/实训-数据结构" prefix_auto="1" extension_auto="1" /><Option object_output="obj/Debug/" /><Option type="1" /><Option compiler="gcc" /><Compiler><Add option="-g" /></Compiler></Target><Target title="Release"><Option output="bin/Release/实训-数据结构" prefix_auto="1" extension_auto="1" /><Option object_output="obj/Release/" /><Option type="1" /><Option compiler="gcc" /><Compiler><Add option="-O2" /></Compiler><Linker><Add option="-s" /></Linker></Target></Build><Compiler><Add option="-Wall" /><Add option="-fexceptions" /></Compiler><Unit filename="snake.cpp"><Option target="&lt;{~None~}&gt;" /></Unit>	<Unit filename="list.h"><Option target="&lt;{~None~}&gt;" /></Unit><Unit filename="main.cpp" /><Extensions><lib_finder disable_auto="1" /></Extensions></Project>
</CodeBlocks_project_file>

核心代码

<Unit filename="list.h"><Option target="&lt;{~None~}&gt;" />
</Unit>
  1. <Unit filename="list.h">:这可能表示一个单元或模块的名称是“list.h”。filename属性可能指示这个单元或模块关联的文件名是“list.h”。
  2. <Option target="<{~None~}>" />:这可能描述了一个选项。target属性可能表示这个选项的目标或关联的对象。"<{~None~}>" 看起来像是一个特殊的标记或占位符,可能表示没有特定的目标或值。

错误示例

<Unit filename="snake.cpp" />
<Unit filename="list.h"><Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="main.cpp" />
  • 配置文件中的引入的源文件缺失子元素<Option target="&lt;{~None~}&gt;" />

正确示例

<Unit filename="snake.cpp"><Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="list.h"><Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="main.cpp" />
http://www.lryc.cn/news/262194.html

相关文章:

  • RHEL7.5编译openssl1.1.1w源码包到rpm包
  • 结构型设计模式(二)装饰器模式 适配器模式
  • C#数据结构
  • 代码随想Day39 | 62.不同路径、63. 不同路径 II
  • Autosar通信实战系列07-Com模块要点及其配置介绍(二)
  • DSP捕获输入简单笔记
  • 【Java基础】HashMap 原理
  • vue3的大致使用
  • 什么是计算机网络?计算机网络基础知识
  • 【机器学习 | 假设检验系列】假设检验系列—卡方检验(详细案例,数学公式原理推导),最常被忽视得假设检验确定不来看看?
  • RealBasicVSR高清处理视频
  • 晚期食管癌肿瘤治疗线程分类
  • 高效营销系统集成:百度营销的API无代码解决方案,提升电商与广告效率
  • 网络基础(十一):VRRP原理与配置
  • 设计模式——状态模式
  • 2020-XNUCA babyv8
  • 货物数据处理pandas版
  • MC-30A (32.768 kHz用于汽车应用的晶体单元)
  • TrustZone之其他设备及可信基础系统架构
  • 自由编程学习资源:free-programming-books
  • 饥荒Mod 开发(十三):木牌传送
  • Qt/C++音视频开发60-坐标拾取/按下鼠标获取矩形区域/转换到视频源真实坐标
  • Java实现订单超时未支付自动取消的8种方法总结
  • android动态权限申请并展示权限使用说明
  • 论文阅读《DPS-Net: Deep Polarimetric Stereo Depth Estimation》
  • docker文档转译1
  • UE4 图片环形轮播 蓝图
  • 饥荒Mod 开发(十):制作一把AOE武器
  • 微服务实战系列之ZooKeeper(下)
  • FFmpeg项目的组成