C++ vs2015编译json和protobuf报错nlohmann::detail::static_constnlohmann::detail::to_json_fn::value‘

2023-11-04

问题描述

补充:这个问题也会导致protobuf编译和使用报错,按照本方法修复后问题解决
只要引入项目中的 #include “nlohmann/json.hpp” 用vs2015编译就会报错,甚至用vs2022的Visual Studio 2015 (v140)工具集编译也会报同样的错误,错误信息如下:

nlohmann::detail::static_constnlohmann::detail::to_json_fn::value': in-class initialization for type 'const T' is not yet implemented; static member will remain uninitialized at runtime but use in constant-expressions is supported...

参考这篇博客“JSON for Modern C++ vs2015 企业版和专业版编译错误”可知是MSVC 的问题,但是不管重装vs2015多少次,专业版和社区版都试过仍没解决问题,我怀疑是每次安装的时候都提示安装包损坏或丢失有关,但是用这里面的方法都没解决问题“四种解决VS2015安装包损坏或丢失的方法

解决方案


20220817 修改:
经过我后来测试,直接安装Microsoft Visual C++ Build Tools可能会提示你已安装vs,需要先卸载安装的vs2015,然后先把Microsoft Visual C++ Build Tools安装好,再把vs2015安装好。我还遇到过安装好后的vs2015无法打开资源视图的情况,是通过下载DirectX修复工具增强版修复DLL解决的。(太麻烦了,要不是项目用到vs2015,绝对不会这么折腾。。。)


我最后的解决办法是在微软官网下载的Microsoft Visual C++ Build Tools点击修改,会将vs2015的build环境重新安装一遍,问题就解决了。下载连接放这里了:https://my.visualstudio.com/Downloads?q=visual%20studio%202015&wt.mc_id=omsftvscom~older-downloads,可能需要登陆微软账号,但是阿里云盘竟然分享不了这个文件 (─.─||)
在这里插入图片描述

后面我在一个博客上看见有人说3.75G的安装包有问题,正确的安装包是6.96G,但是我没有去验证,感兴趣的小伙伴可以试试,博客连接在这里:安装Visual Studio 2015(VS2015)时提示安装包JavaScript_ProjectSystem.msi丢失或损坏的解决方法

参考连接

1、JSON for Modern C++ vs2015 企业版和专业版编译错误
https://blog.csdn.net/weixin_33841722/article/details/91693116
2、四种解决VS2015安装包损坏或丢失的方法
https://blog.csdn.net/hs_2017112123/article/details/122107693
3、安装Visual Studio 2015(VS2015)时提示安装包JavaScript_ProjectSystem.msi丢失或损坏的解决方法 https://blog.csdn.net/wenhao_ir/article/details/124971021

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

C++ vs2015编译json和protobuf报错nlohmann::detail::static_constnlohmann::detail::to_json_fn::value‘ 的相关文章

随机推荐

  • 七种经典排序算法小记

    首先要感谢MoreWindows的心得分享 通过他的文章 我更深入了解了这七种排序算法的思路 同时 也自己揣摩 手动敲代码实现了这些算法 为了加深理解 又给每一行代码加了注释 在此 特记下学习这七种排序算法的过程和心得 补充 冒泡排序 直接
  • Qt绑定UI界面和Qt类的四种方法

    1 Qt类头文件中 声明命名空间 namespace Ui class Widget 声明UI指针对象 public explicit Widget QWidget parent 0 private Ui Widget ui 源文件的构造函
  • webpack

    一 区别 前面两节我们有提到Loader与Plugin对应的概念 先来回顾下 loader 是文件加载器 能够加载资源文件 并对这些文件进行一些处理 诸如编译 压缩等 最终一起打包到指定的文件中 plugin 赋予了 webpack 各种灵
  • 拓世AIGC

    在 机器 自然力和科学的应用 一书中 马克思曾指出 火药 指南针 印刷术 这是预告资产阶级社会到来的三大发明 火药把骑士阶层炸得粉碎 指南针打开了世界市场并建立了殖民地 而印刷术则变成了新教的工具 这段话深刻阐释了科学技术对人类社会带来的深
  • 深度学习中的token和tokenization

    作为一名即将入学的研究生 在这个假期准备看一些论文为自己的科研做准备 结果刚开始就出现了停顿 在论文中出现了名词token 我无法对它做出很好的翻译 导致论文读不下去 网上对它的解释多种多样 经过查阅学习后 我的理解如下 我阅读的是英文文献
  • MySQL字符编码的修改及查看

    MySQL字符编码的修改及查看 1 修改MySQL的默认编码集 也称全局编码集 修改MySQL的全局配置文件 etc my cnf 在其中添加 character set server utf8 编码格式 collation server
  • C++11中Lambda表达式的基本用法和总结

    文章目录 前言 lambda的基本形式 lambda中的捕获列表 的常用方式 lambda表达式中mutable关键字 lambda作为形参传参的用法 前言 对于Lambda表达式 其实本质就是一个函数 其用法也和函数差不多 只不过它和函数
  • 简单了解JVM

    jvm作用 把一套程序在不同的平台上运行 可以实现自动的内存管理 自动的垃圾回收 jvm分为四大结构 1 类加载系统 负责从硬盘上加载字节码文件 2 运行时数据区 存储时的数据 分为栈 方法区 堆 本地方法栈 程序计数器 3 执行引擎 负责
  • Oracle入门笔记(二)——SQL Developer的基本使用

    Oracle各种连接和连接配置 1 Oracle自带SQL plus工具的使用 2 Navicat连接Oracle 3 SQL Developer连接Oracle 4 Oracle表空间 4 1永久表空间 4 2临时表空间 5 SQL De
  • 微信小程序实现画布生成海报功能

    微信小程序可以通过使用 标签来实现生成海报的功能 以下是基本实现步骤 1 在 WXML 文件中创建一个 标签 并设置其宽度和高度属性
  • MySQL磁盘使用率是什么_磁盘利用率和饱和度理解

    在这篇文章里 会介绍磁盘利用率 Utilization 和饱和度 Saturability 相关的知识 在之前的博客里面 我写了一些关于CPU使用率和饱和度之间有什么实质性不同 以及CPU使用率 饱和度如何从不同维度影响响应时间 RT 的文
  • lua 取一个数字的整数部分

    lua在对两个整数进行除法操作时不会向C那样将结果转换成整数 而是自动转换成浮点数 lua没有数据类型之分 如果要实现此功能需要取得结果中的整数部分 math ceil x Returns the smallest integer larg
  • Redis 持久化机制详解

    Redis是内存数据库 数据都是存储在内存中 为了避免进程退出导致数据的永久丢失 需要定期将Redis中的数据以某种形式 数据或命令 从内存保存到硬盘 当下次Redis重启时 利用持久化文件实现数据恢复 除此之外 为了进行灾难备份 可以将持
  • 首次进入小程序拒绝相机权限,再次允许camera组件显示不出来

    第一次进去拒绝授权开启摄像头后 再次进去允许授权 但是页面camera组件显示不出来 百度了一下 大家都说直接给camera组件写个显示隐藏 试过了 不是很理想 最终想到的解决办法 拒绝授权后进入的方法 官方的函数名 handleCamer
  • sqli-labs:less-21

    和20题很像 然后一看cookie是一个base64编码的 解码一下 是Dumb 所以cookie一个是注入点 只是有个base64编码 随便提一下 base32 只有大写字母和数字数字组成 或者后面有三个等号 base64 只有大写字母和
  • 【MATLAB】使用Classification Learner工具箱训练和预测数据

    近日对matlab内置的classification Learner 工具箱有所接触 现在整理一下关于使用该工具箱训练模型和预测数据的相关操作 一 原始数据 其中列向量为样本 行向量内为每个样本的6个特征 最后一列为样本的响应变量 即为样本
  • PyCharm社区版安装教程和环境配置及使用

    一 PyCharm官网下载 访问官网地址 https www jetbrains com pycharm 点击首页 Download 按钮 进入下载页面 选择Community下的 Download 如图 点击后进入 Thank you f
  • ntp服务器修改时区,部署ntp服务器笔记与时区的介绍与修改

    准备工作 server ip 10 1 1 119 client ip 10 1 1 56 关闭selinux vi etc selinux config SELINUX disabled 关闭iptables service iptabl
  • 时序分析基本概念介绍——SDC概述

    今天我们要介绍的时序概念是设计约束文件SDC 全称Synopsys design constraints SDC是一个设计中至关重要的一个文件 它对电路的时序 面积 功耗进行约束 它是设计的命脉 决定了芯片是否满足设计要求的规范 Timin
  • C++ vs2015编译json和protobuf报错nlohmann::detail::static_constnlohmann::detail::to_json_fn::value‘

    目录 问题描述 解决方案 参考连接 问题描述 补充 这个问题也会导致protobuf编译和使用报错 按照本方法修复后问题解决 只要引入项目中的 include nlohmann json hpp 用vs2015编译就会报错 甚至用vs202