static const C++ 类成员已初始化在链接时给出重复符号错误

2023-11-29

我有一个类,它有一个静态常量数组,它必须在类之外初始化:

class foo{  
static const int array[3];  
};    
const int foo::array[3] = { 1, 2, 3 };

但后来我在 foo.o 和 main.o 中得到了重复的符号 foo::array foo.o 保存 foo 类,main.o 保存 main() 并使用 foo 的实例。
如何在 foo 的所有实例之间共享这个静态 const 数组?我的意思是,这就是静态成员的想法。


在相应的 .cpp 文件中初始化它,而不是在 .h 文件中。

当你#include它是一个预处理器指令,基本上将文件逐字复制到#include。因此,您可以通过将其包含在两个不同的编译单元中来对其进行两次初始化。

链接器看到 2 但不知道该使用哪一个。如果您仅在其中一个源文件中初始化它,则只有一个 .o 会包含它,并且您不会遇到问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

static const C++ 类成员已初始化在链接时给出重复符号错误 的相关文章

  • 如何在 Visual Studio 2010 中增强 XAML 设计器?

    当我使用 XAML 设计器时 进入设计器和退出设计器是如此困难和缓慢 当我这样做时 Visual Studio 卡了一段时间 有什么方法可以增强 XAML 设计器和编辑器吗 Ant 保存 XAML 文件时非常慢 这通常意味着您可能有复杂的
  • 读取文件特定行号的有效方法。 (奖励:Python 手册印刷错误)

    我有一个 100 GB 的文本文件 它是来自数据库的 BCP 转储 当我尝试导入它时BULK INSERT 我在第 219506324 行上收到一个神秘错误 在解决此问题之前 我想看看这一行 但可惜的是我最喜欢的方法 import line
  • 存储来自其他程序的事件

    我想将其他应用程序的事件存储在我自己的应用程序中 事件示例 打开 最小化 Word 或打开文件时 这样的事可能吗 运行程序 http msdn microsoft com en us library ms813609 aspx and 打开
  • 无法在 Windows 运行时组件库的 UserControl 中创建依赖项属性

    我想在用户控件内创建数据可绑定属性 这个用户控件包含一个 Windows 运行时组件 项目 我使用下面的代码来创建属性 public MyItem CurrentItem get return MyItem GetValue Current
  • ASP.NET:获取自 1970 年 1 月 1 日以来的毫秒数

    我有一个 ASP NET VB NET 日期 我试图获取自 1970 年 1 月 1 日以来的毫秒数 我尝试在 MSDN 中寻找方法 但找不到任何东西 有谁知道如何做到这一点 从 NET 4 6 开始 该方法ToUnixTimeMillis
  • 关于在 Windows 上使用 WiFi Direct Api?

    我目前正在开发一个应用程序 我需要在其中创建链接 阅读 无线网络连接 在桌面应用程序 在 Windows 10 上 和平板电脑 Android 但无关紧要 之间 工作流程 按钮 gt 如果需要提升权限 gt 创建类似托管网络的 WiFi 网
  • 使用 JNI 从 Java 代码中检索 String 值的内存泄漏

    我使用 GetStringUTFChars 从使用 JNI 的 java 代码中检索字符串的值 并使用 ReleaseStringUTFChars 释放该字符串 当代码在 JRE 1 4 上运行时 不会出现内存泄漏 但如果相同的代码在 JR
  • PlaySound 可在 Visual Studio 中运行,但不能在独立 exe 中运行

    我正在尝试使用 Visual Studio 在 C 中播放 wav 文件 我将文件 my wav 放入项目目录中并使用代码 PlaySound TEXT my wav NULL SND FILENAME SND SYNC 我按下播放按钮 或
  • 批量更新 SQL Server C#

    我有一个 270k 行的数据库 带有主键mid和一个名为value 我有一个包含中值和值的文本文件 现在我想更新表格 以便将每个值分配给正确的中间值 我当前的方法是从 C 读取文本文件 并为我读取的每一行更新表中的一行 必须有更快的方法来做
  • 上下文敏感与歧义

    我对上下文敏感性和歧义如何相互影响感到困惑 我认为正确的是 歧义 歧义语法会导致使用左推导或右推导构建多个解析树 所有可能的语法都是二义性的语言是二义性语言 例如 C 是一种不明确的语言 因为 x y 总是可以表示两个不同的事物 如下所述
  • 私有模板函数

    我有一堂课 C h class C private template
  • std::async 与重载函数

    可能的重复 std bind 重载解析 https stackoverflow com questions 4159487 stdbind overload resolution 考虑以下 C 示例 class A public int f
  • 有人可以提供一个使用 Amazon Web Services 的 itemsearch 的 C# 示例吗

    我正在尝试使用 Amazon Web Services 查询艺术家和标题信息并接收回专辑封面 使用 C 我找不到任何与此接近的示例 所有在线示例都已过时 并且不适用于 AWS 的较新版本 有一个开源项目CodePlex http www c
  • 如何从main方法调用业务对象类?

    我已将代码分为业务对象 访问层 如下所示 void Main Business object public class ExpenseBO public void MakeExpense ExpensePayload payload var
  • .NET中的LinkedList是循环链表吗?

    我需要一个循环链表 所以我想知道是否LinkedList是循环链表吗 每当您想要移动列表中的 下一个 块时 以循环方式使用它的快速解决方案 current current Next current List First 电流在哪里Linke
  • 为什么在setsid()之前fork()

    Why fork before setsid 守护进程 基本上 如果我想将一个进程与其控制终端分离并使其成为进程组领导者 我使用setsid 之前没有分叉就这样做是行不通的 Why 首先 setsid 将使您的进程成为进程组的领导者 但它也
  • Process.Start() 方法在什么情况下返回 false?

    From MSDN https msdn microsoft com en us library e8zac0ca v vs 110 aspx 返回值 true 表示有新的进程资源 开始了 如果由 FileName 成员指定的进程资源 St
  • Server.MapPath - 给定的物理路径,预期的虚拟路径

    我正在使用这行代码 var files Directory GetFiles Server MapPath E ftproot sales 在文件夹中查找文件 但是我收到错误消息说 给定物理路径但虚拟路径 预期的 我对在 C 中使用 Sys
  • 如何在按钮单击时模拟按键 - Unity

    我对 Unity 中的脚本编写非常陌生 我正在尝试创建一个按钮 一旦单击它就需要模拟按下 F 键 要拾取一个项目 这是我当前的代码 在编写此代码之前我浏览了所有统一论坛 但找不到任何有效的东西 Code using System Colle
  • 如何正确使用 std::condition_variable?

    我很困惑conditions variables以及如何 安全 使用它们 在我的应用程序中 我有一个创建 gui 线程的类 但是当 gui 是由 gui 线程构造时 主线程需要等待 情况与下面的函数相同 主线程创建互斥体 锁和conditi

随机推荐

  • perl删除连续的重复行

    我想删除连续的重复行 即例如 test txt car speed is good bike slower than car plane super fast super fast bullet train super fast 这将删除除
  • Firebase 数据库结构

    我目前正在为 iOS 创建一个电子商务应用程序 但我无法决定如何为用户通过 关键字 搜索项目的场景构建数据库 我不确定存储关键字数组或仅存储该项目的关键字字符串是否会更好 如果大家有什么建议请告诉我 谢谢 这是我现在的单个项目的结构 ite
  • Ajax.BeginForm 导致重定向到部分视图而不是就地视图

    我的 Search cshtml 有一个名为 search results 的 div 需要更新 SearchResults 是操作名称 我已经在 MVC2 VS2008 项目上做过很多次了 但这是我第一次使用 MVC3 和 VS2010
  • AI Platform 中的 PyTorch 模型部署

    我正在 Google Cloud AI Platform 中部署 Pytorch 模型 出现以下错误 ERROR gcloud beta ai platform versions create Create Version failed B
  • 将对象绑定到 WPF TreeView

    我想知道如何将自定义数据类型绑定到TreeView 数据类型基本上是包含其他数组列表的对象数组列表 访问看起来像这样 foreach DeviceGroup dg in system deviceGroups foreach DeviceT
  • 为什么这段多行代码中存在VBA语法错误?

    我有一行这么长的代码 VBE 说它有语法错误 我检查了代码 我很确定它应该没问题 我是否超出了限制 Worksheets DTR Cells Total Rows Formulas 1 26 IF INDEX Payroll Tables
  • Oracle 数据库 11g 中出现错误 ORA-12638

    我是一个使用 Oracle Database 11g Express 的大初学者 今天第一次尝试 我只掌握了数据库的理论知识 学过SQL但从未使用过 所以 我今天安装了Oracle 11g 在需要时给了他们系统密码 然后我继续启动 启动数据
  • 如何为 Python 中的 document_client 对象发送的 Cosmos DB 查询设置连续令牌?

    我有一个 API 可以根据文档字段中出现的关键字检索文档 我想对结果进行分页 以便我可以将文档返回给发送请求的客户 并允许他们在需要时请求更多文档 当我在 Azure 数据资源管理器中时 查询本身在浏览器中只需要一秒钟左右的时间 但当我使用
  • 如何取消Facebook登录?

    我刚刚添加了一个facebook我的手机游戏应用程序的功能并根据教程实现了 SSO 单点登录 https developers facebook com docs mobile ios build 如果用户尚未安装 facebook 的应用
  • Next.js - 设置 onClick 处理程序时遇到问题

    访问时我很惊讶react dev这么说create react app不再建议用于 React 应用程序引导 好吧 世界发生了变化 让我们深入了解我的第一个应用程序的 Next js import Image from next image
  • AssertionError: 302 != 200 : 无法检索重定向页面 '/api/v2/app/nextdialog': 响应代码为 302 (预期为 200)

    AssertionError 302 200 无法检索重定向页面 api v2 app nextdialog 响应代码为 302 预期为 200 在 Django 中 可以有三个视图 每个视图都重定向到下一个视图 视图 1 重定向到视图 2
  • 如何从空手道功能文件中的 .js 文件调用特定的 javascript 函数

    假设我已将以下函数保存在 Utility js 文件中 function getCurrentDate return date function getMonth return Oct 请帮助我如何在功能文件中访问这些方法 我尝试了以下代码
  • HTTP v1 API:用于网络推送通知的“click_action”

    FCM 中的文档主要关注 Android iOS 和我的底层webpush自我正在挣扎click action click action是一个可以在旧 API 中使用的密钥 但似乎不再适用于webpush 对此的唯一具体参考是在这篇博客文章
  • 对 .Net Native 的依赖

    我在提交到应用商店时遇到以下认证错误 我的应用程序名称 依赖于 Microsoft Net Native Runtime Package 1 x 框架 但清单中缺少框架依赖项声明 我的应用程序名称 依赖于 Microsoft Net Nat
  • R 中的正则表达式:查找确切的数字

    这是在R中 grep AB22 c AB22 AB22 AB22 AB22 3 AB226AEM 1 AB22AEM 2 value T 给出所有这些 AB22 AB22 AB22 AB22 3 AB226AEM 1 AB22AEM 2 但
  • 从外部 vagrant 连接到 MySQL

    我想使用 mycli 连接到在 vagrant 实例内运行的 MySQL 服务器 我的基本 Vagrantfile 类似于以下代码片段 Vagrant configure VAGRANTFILE API VERSION do config
  • 画布游戏计时器

    我正在制作一个 HTML5 Canvas 游戏 其中有一个在画布上移动的矩形 目标是尽可能长时间地躲避在画布上移动的多个球 但我正在努力设置一个计时器 以在球击中矩形时显示您的时间 得分 矩形由上 下 左 右键移动 任何了解这方面知识的人可
  • C++ 向量总是连续的吗? [复制]

    这个问题在这里已经有答案了 可能的重复 std vector 元素是否保证是连续的 我遇到过一种技术 人们在 C 中使用向量来接收或发送 MPI 操作的数据 因为据说它在内存中连续存储元素 然而 我仍然怀疑这种方法对于任何大小的向量是否保持
  • fromJSON 中的多个 JSON 对象

    我正在尝试使用fromJSON 读取具有多个对象的 json 文件 结构如下 key11 value11 key12 value12 key11 value11 key12 value12 如果我手动添加 整个文件用括号括起来 以及 对象之
  • static const C++ 类成员已初始化在链接时给出重复符号错误

    我有一个类 它有一个静态常量数组 它必须在类之外初始化 class foo static const int array 3 const int foo array 3 1 2 3 但后来我在 foo o 和 main o 中得到了重复的符