新的 C++ 向后兼容

2024-02-25

我已经很多年没有用 C++ 编写代码了。我最近发现,在那些年里,情况发生了很大的变化。我不确定我是否喜欢这些变化,但那是另一个讨论了。

我的硬盘上仍然有一些 C++ 代码。如果我把它拿出来并尝试用一个很好的新 C++ 编译器(比如最新版本的 g++)来编译它,它会编译吗?没有警告(假设之前编译时没有警告)?

最近,我确实开始接触一些 VC++ 2010,发现一些我期望能工作的东西却不起作用,并且当我尝试使用 NULL 时,根据上下文收到了不同的消息。但在该代码的一部分中,我使用了 NULL,甚至没有发出警告。


这取决于。通常较新的编译器更符合标准,因此在早期编译器上编译的许多结构现在无法在不修复的情况下编译。例如:

 for( int i = 0; ... );
 i++;

在 Visual C++ 7 中编译,但不在 Visual C++ 9 中编译。

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

新的 C++ 向后兼容 的相关文章

随机推荐

  • 如何动态添加值到 I18n?

    我的 Rails 应用程序中有很多 yml 我想将其中一些放在其他服务中 以便我可以从多个地方调用它 此调用的响应将是一个哈希值 en test text1 hi english text2 mambo number num es test
  • Git 将分支变基到旧提交

    注意 这种情况是如何发生的 这更像是一个故事 与任何事情无关 在我看来并没有真正的相关性 给定以下 git 提交图 从最旧的开始 全部推送到原点 start breaking fix 0 work fix 1 master morework
  • 如何保留 HashSet 中的插入顺序?

    我写了下面的代码 public int longestConsecutive int nums Set
  • C++ 和 Java 中只有一个返回值的原因是什么?

    通常我会浏览这个事实并接受它 这就是轮子旋转的方式 但今天我想知道它来自哪里 为什么一个函数只有一个返回 引用 值 为什么不能 函数返回多个值会很困难还是不明智 是因为对象的原因吗 您应该如何期望数据包始终以对象引用的形式返回 如果您将声明
  • 将详尽的依赖项添加到 useEffect 和 useCallback 中会导致无限循环

    所以我以为我已经掌握了这些钩子的窍门 但是 lint 规则react hooks exhaustive deps让我绊倒 我的里面有这个方法Provider https reactjs org docs context html conte
  • 如何有条件地将模板和 JavaScript 文件发送到 Meteor 中的客户端?

    这与我之前问过的一个问题有关有条件地发送文档数据 https stackoverflow com questions 14074434 how do you conditionally send data to the client in
  • 评估绑定字段上的数据字段以相应地显示文本

    大家好 如何根据数据字段中的值在绑定字段中显示不同的字符串 例如 如果数据字段的值为 1 则应显示 待处理 如果为 2 则 已删除 提前致谢 您可以使用服务器端功能来显示条件值 看看这个示例
  • Spring MVC Java 中的 AuthenticationSuccessHandler 基于 Java 的配置

    我有三个角色 我想在登录后根据用户的角色将用户重定向到不同的页面 我知道这可以通过AuthenticationSuccessHandler 但我在基于 Java 的配置中声明它时遇到了麻烦 到目前为止我已经做到了这一点 protected
  • 获取给定标题的 mediawiki 页面的 URL - 以 PHP 编程方式 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 如何获取
  • 自定义 HTTP 方法在 Retrofit 2 中不起作用

    您好 我在代码中使用了自定义方法 如下所示 但它总是给我 java lang IllegalArgumentException 方法 AUTH 不得有 请求正文 我的代码无法正常工作 它总是说 Custom method AUTH must
  • 插入 MySQL 数据库的 PHP PDO 代码不起作用[重复]

    这个问题在这里已经有答案了 我在对一些简单的 PHP 代码进行故障排除以在 MySQL 表中插入记录时遇到困难 直接输入 WAMP 的代码可以正常工作 INSERT INTO users userName userEmail VALUES
  • 安装最新版本后显示较旧的 Ruby 版本

    我正在按照以下说明进行操作GoRails https gorails com setup osx 10 10 yosemite ruby在我的系统上安装 Ruby Rails 按照使用 rbenv 安装 Ruby 的说明进行操作后 我验证了
  • 填充线条曲线下

    对于下面的示例数据集 我想将 y 绘制为一条平滑线 并使用 R 在线下填充 我能够获得平滑的线条 但不能获得颜色填充的曲线 有人可以帮我吗 date y 2015 03 11 71 12 2015 03 10 34 0 2015 03 09
  • 如何替换 html 标签之间的任何文本

    我在 html 标签之间有文本 例如 td vip td 我将在标签之间添加任何文本 td td 我如何从这些标签中剪切任何文本并将任何文本放在这些标签之间 我需要通过 bash shell 来完成 我怎样才能做到这一点 首先 我尝试获取此
  • HttpClient - Xamarin Android - MvvmCross

    我一直在使用 Xamarin 和 MvvmCross 开发 Android 应用程序 一切都很顺利 我和我 的团队能够开发解决方案 本周我们决定进行最终调整并在其他环境中测试该应用程序 在测试过程中 我遇到了 Android 解决方案的巨大
  • 当我在 JScrollPane 中滚动水平和垂直滚动条时,paintComponent 不会被调用

    我在使用 Swing 和 JScrollPane 时遇到问题 我的行为很奇怪 我延长了JScrollPane 我在其中显示图像并在其上绘制矩形以定义区域 对于大图像 我有一个水平和一个垂直滚动条 我 好吧 当我移动一个或另一个滚动条时 我看
  • 重用 CloudFormation 标签列表

    我有一组相当复杂的 CloudFormation 模板 用于配置基础设施的不同环境 然而 我最近收到了使用相当广泛的标签列表 如 15 个 来标记创建的资源的请求 对我来说 将标签硬编码到每个模板文件中似乎不是一个好主意 我宁愿创建一次标签
  • arp -a 和路由打印

    我需要编写一个程序来显示这些信息 netstat TCP UDP 连接 有关 IP 的信息 ipconfig all arp a 路线打印 我已经拥有其中的大部分 但我有一个问题route print and arp a 我不想使用执行此命
  • 从 dll 导入显式实例化的模板类

    作为一个 dll 新手 我必须向全能的 SO 询问一些事情 假设我显式实例化一个模板类 如下所示 template class declspec dllexport B
  • 新的 C++ 向后兼容

    我已经很多年没有用 C 编写代码了 我最近发现 在那些年里 情况发生了很大的变化 我不确定我是否喜欢这些变化 但那是另一个讨论了 我的硬盘上仍然有一些 C 代码 如果我把它拿出来并尝试用一个很好的新 C 编译器 比如最新版本的 g 来编译它