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

news/2024/7/5 0:46:04

基于链表实现贪吃蛇案例时候,在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://lihuaxi.xjx100.cn/news/1899387.html

相关文章

架构设计系列之基础设施能力建设

周末聊两句&#xff1a; 今天将的基础设施能力建设部分&#xff0c;一般的架构书籍中都不存在的部分&#xff0c;这是我在实践过程中的经验和能力总结部分&#xff0c;希望和大家有一个很好的交流自从在 WeChat 中开了订阅号的两周半的时间&#xff0c;非常感谢大家的支持&…

HarmonyOS云开发基础认证考试满分答案(100分)【全网最全-不断更新】【鸿蒙专栏-29】

系列文章&#xff1a; HarmonyOS应用开发者基础认证满分答案&#xff08;100分&#xff09; HarmonyOS应用开发者基础认证【闯关习题 满分答案】 HarmonyOS应用开发者高级认证满分答案&#xff08;100分&#xff09; HarmonyOS云开发基础认证满分答案&#xff08;100分&#xf…

【JavaEE】多线程案例 - 定时器

作者主页&#xff1a;paper jie_博客 本文作者&#xff1a;大家好&#xff0c;我是paper jie&#xff0c;感谢你阅读本文&#xff0c;欢迎一建三连哦。 本文于《JavaEE》专栏&#xff0c;本专栏是针对于大学生&#xff0c;编程小白精心打造的。笔者用重金(时间和精力)打造&…

Linux环境下HTTP请求的代码详解与实例

嘿&#xff0c;Linux狂热者们&#xff0c;是时候让我们在这个充满激情的平台上探索一下HTTP协议的奥秘了。我知道&#xff0c;对于这个我们每天都在使用&#xff0c;但却可能没深入了解过的HTTP&#xff0c;你们一定充满了好奇和期待。那么&#xff0c;让我们一起踏上这趟探索之…

人生感悟 | 又是一年,眼看要2024了

哈喽&#xff0c;你好啊&#xff0c;我是雷工&#xff01; 刚过完大雪节气没两天&#xff0c;气温开始急转直下&#xff0c;走在路上明显感觉冷了许多。看天气预报很多地区已经开始下雪了。 看日历已经12月9号了&#xff0c;12月份&#xff0c;一年的最后一个月&#xff0c;2…

有两个循环单链表,链表头指针分别为 h1 和 h2,编写一个函数将 h2 链接到 链表h1 之后,要求处理完仍是一个循环单链表。

题目描述 &#xff1a;有两个循环单链表&#xff0c;链表头指针分别为 h1 和 h2&#xff0c;编写一个函数将 h2 链接到 链表h1 之后&#xff0c;要求处理完仍是一个循环单链表。 分析&#xff1a; 注意题目说的是头指针 h1 和 h2&#xff0c;所以这两个循环单链表并没有头结点…

深入理解GPIO概念详讲

学习目标 了解mos管的使用了解GPIO输出模式了解GPIO输入模式理解ARM系列GPIO相关理论掌握GD32几种GPIO工作模式编码实现学习内容 基础概念 GPIO,全称为“通用输入/输出”(General Purpose Input/Output),是计算机系统中用于与外部世界进行数字通信的一种接口标准。它允许…

WPF——命令commond的实现方法

命令commond的实现方法 属性通知的方式 鼠标监听绑定事件 行为&#xff1a;可以传递界面控件的参数 第一种&#xff1a; 第二种&#xff1a; 附加属性 propa&#xff1a;附加属性快捷方式