- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
当我从 VS2013 迁移我的项目时,我发现了一些奇怪的错误。以下是用于重现它的新创建项目的简化代码:
A.cpp
:#include <iostream>
extern void foo();
int main()
{
std::cout << "some text from main" << std::endl;
foo();
}
B.cpp
:#include <iostream>
void foo()
{
std::cout << "some text from foo" << std::endl;
}
要添加的重要一点是项目将“禁用语言扩展”设置为是(/Za)。如果没有此设置,它会正常构建。
输出是一长串以下错误:
1>B.obj : error LNK2005: "public: static bool const std::numeric_limits<short>::is_signed" (?is_signed@?$numeric_limits@F@std@@2_NB) already defined in A.obj
1>B.obj : error LNK2005: "public: static int const std::numeric_limits<short>::digits" (?digits@?$numeric_limits@F@std@@2HB) already defined in A.obj
1>B.obj : error LNK2005: "public: static int const std::numeric_limits<short>::digits10" (?digits10@?$numeric_limits@F@std@@2HB) already defined in A.obj
1>B.obj : error LNK2005: "public: static bool const std::numeric_limits<unsigned short>::is_signed" (?is_signed@?$numeric_limits@G@std@@2_NB) already defined in A.obj
1>B.obj : error LNK2005: "public: static int const std::numeric_limits<unsigned short>::digits" (?digits@?$numeric_limits@G@std@@2HB) already defined in A.obj
1>B.obj : error LNK2005: "public: static int const std::numeric_limits<unsigned short>::digits10" (?digits10@?$numeric_limits@G@std@@2HB) already defined in A.obj
1>B.obj : error LNK2005: "public: static bool const std::numeric_limits<char16_t>::is_signed" (?is_signed@?$numeric_limits@_S@std@@2_NB) already defined in A.obj
1>B.obj : error LNK2005: "public: static int const std::numeric_limits<char16_t>::digits" (?digits@?$numeric_limits@_S@std@@2HB) already defined in A.obj
...
这似乎表明 <iostream>
的 VS 实现 header 以某种令人讨厌的方式破坏了一个定义规则。这是正确的,还是我遗漏了一些明显的东西?
最佳答案
我在编译 Apache Xerces3 C++ 代码时遇到了同样的问题。 Stein 的评论中已经提到了解决方案.您将需要更新 Visual Studio。版本 14.0.2541.03 更新 3 工作,我的旧版本 14.0.24720.00 更新 1 产生了错误。
关于c++ - 多文件 <iostream> 错误 LNK2005 in VS2015 with/Za,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31808256/
我需要以下正则表达式,允许 [a-zA-Z]+ 或 [a-zA-Z]+[ \\-]{0,1}[a-zA-Z]+ 所以我想在 a-zA-Z 字符之间允许无限的减号和空格 示例: sdfsdfdsf-sf
我的电子邮件验证脚本中有以下代码。我想了解有关变量reg的更多信息,但不知道如何查找相关信息,因为我不知道其语法叫什么。有人可以引导我找到正确的资源或告诉我这种语法的名称吗? function val
我试图写一个正则表达式来匹配字符串形式: "[A-Za-z][A-Za-z]-[A-Za-z][A-Za-z]_[match all chars]" 我要匹配的字符串必须是这种形式,包括连字符和下划线
正则表达式 ^[A-Za-Z ][A-Za-z0-9 ]* 描述“第一个字母应该是字母表,其余字母可能是字母数字”。但是我怎么也允许特殊字符呢?当我输入“C#”时出现错误。 如何输入特殊字符且首字母应
^[a-zA-Z] 和 [^a-zA-Z] 有区别吗? 当我 checkin C# 时, Regex.IsMatch("t", "^[a-zA-Z]") // Returns true (I thi
我试图让我的 NSScanner 尝试扫描以下正则表达式:[a-zA-Z_][a-zA-Z0-9_]*,但遇到困难。 我可以尝试先读取 a-Z_,然后尝试附加 a-Z0-9_。 我想知道是否有更简单/
我希望能够在没有 Microsoft 语言扩展恶作剧的情况下编译我的 VS2017 C++ 项目。 根据此处的回复,/Za compiler directive does not compile sy
我需要一个满足以下规则的正则表达式: 长度必须介于8-32个字符之间 必须以字母开头 不得包含任何空格 不得包含任何特殊字符 我在google的帮助下尝试了自己的表达式,例如^([a-zA-Z][a-
我有这个用于电子邮件验证的正则表达式(假设只有 x@y.com、abc@defghi.org、something@anotherhting.edu 是有效的) /^[a-zA-Z0-9]+@[a-zA
我正在将 Entity Framework 与 PostgreSQL 结合使用。我需要编写一个遵循这种格式的查询: await Context.Database.ExecuteSqlCommandAs
这个问题已经有答案了: Reference - What does this regex mean? (1 个回答) 已关闭 3 年前。 我刚刚开始使用正则表达式,正在解决这个问题 question其
我正在学习正则表达式,目前看来我很困惑。 val.replace(/^[^a-zA-Z0-9]*|[^a-zA-Z0-9]*$/g, ''); 在上面的表达式中 1) 哪一部分表示不包含空格?因为我试
我正在尝试通过Vagrant Docker规定运行Docker容器: d.run "tomcat:8.0", args: "-it -d -p 8888:8888 --name tomcat8" Va
我知道正则表达式模式必须匹配以以下字符的组合和重复开头的字符串: a-z A-Z 一个空白字符 并且对字符串的结尾方式没有限制! 第一个案例 所以像 uoiui897868 这样的字符串(任何只以空格
如何删除字母而不是数字之间的空格 例如: 输入 I ES P 010 000 000 000 000 000 001 001 000 000 IESP 000 000 输出 IESP 010 000
我正在使用 来确保输入的值仅包含字母表,它工作正常,但不允许在字符串中占用空间。 如何在上述模式中加入空格字符? 提前致谢。 最佳答案 只需将空格添加到正则表达式。 如果您想要任何空格,而不仅仅是
我正在编写一个解决方案,用于扫描 iOS 南非驾驶执照背面的 PDF417 条形码 ( http://en.wikipedia.org/wiki/PDF417 )。我找不到任何有关如何解码条形码的文档
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 6年前关闭。 Improve this questi
我有这个代码; $('[data-question=502] textarea').bind('input propertychange', function() { $(this).val
引用此讨论:Decode South African (ZA) Drivers License 请协助我尝试在 Android 上的 Java 中创建 PublicKey 实例时似乎遇到错误。我已粘贴
我是一名优秀的程序员,十分优秀!