使用向量和查找时 C++ 中未解决的外部问题

2024-02-23

我已经在一个完全独立的项目中尝试过这段代码,它工作得很好(唯一的区别是不工作的项目被导出为 DLL)。这是代码:

RTAT数学库

#include "stdafx.h"
#include "RTATMATHLIB.h"
#include <math.h>
#include <vector>
#include <algorithm>
#include <stdexcept>

using namespace std;

double someFunc(double** Y, int length)
{
    vector<double> myVector;

    for(int i = 0; i < length; i++)
    {
        double value = (*Y)[i];

        vector<double>::iterator it = find(myVector.begin(), myVector.end(), value);

        if(it != myVector.end())
        {
            continue;
        }
        else
        {
            myVector.push_back(value);
        }
    }
    return 0;
}

RTATMATHLIB.H

__declspec(dllexport) double someFunc(double** Y, int length);

ERRORS

Error   1   error LNK2019: unresolved external symbol __imp___CrtDbgReportW referenced in function "public: __thiscall std::_Vector_const_iterator<double,class std::allocator<double> >::_Vector_const_iterator<double,class std::allocator<double> >(double *,class std::_Container_base_secure const *)" (??0?$_Vector_const_iterator@NV?$allocator@N@std@@@std@@QAE@PANPBV_Container_base_secure@1@@Z)  RTATMATHLIB.obj RTATMATHLIB
Error   2   fatal error LNK1120: 1 unresolved externals

就是这样。我不确定为什么它在另一个项目中有效,而在这个项目中不起作用......


我发现了另一个论坛帖子,其中似乎有人报告了与您遇到的完全相同的问题。请检查您是否有

_DEBUG

在您的项目设置(在 C/C++ - 预处理器下)或代码中的某个位置(或包含文件)中定义。

看起来 std::vector 认为您正在构建调试版本,而实际上您正在创建发布版本。

我希望这有帮助。

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

使用向量和查找时 C++ 中未解决的外部问题 的相关文章

  • 在 C/C++ 中使用单个初始化来初始化具有相同值的多个指针

    我想在 C C 中使用单个赋值运算符声明两个或多个具有相同值的指针 以下代码是一个示例 List a NULL List b NULL List c NULL 一行中是否有等效项 编辑 为了澄清 我正在寻找两种语言的答案 我使用 斜杠 来区
  • 生产中 ASP.NET Core 应用程序的实例化

    ASP NET Core 开始执行Main方法在于Program class inside Program cs文件 这会构建一个网络托管环境并告诉该网络主机开始运行 那么 有startup cs file 开发 NET Core Web
  • 如果变量的值在编译时已知/未知,则进行专门化

    如何在编译时 在实际编译和运行程序之前 其参数之一的值已知 未知的情况下专门化模板函数 我还不知道怎么办 idea 1 include
  • Winform 没有.NET 框架?

    我必须创建一些表单并将其作为直接 EXE 提供 而不是安装程序 它安装 NET 框架 最终用户对此不满意 他们想要可以直接打开和工作的东西 我知道它可以作为网络完成 但我正在寻找 winforms 吗 请建议哪种工具 技术可以处理这个问题
  • TransactionScope 超时过早发生?

    我在用着TransactionScope进行一些批量插入和更新 问题是 即使我设置了超时 我也会在 30 分钟长的操作中遇到超时异常TransactionScope到一小时 此外 在异常之后 它会插入看似随机数量的批次记录 例如 最后一个操
  • Cgo 生成的源无法在 MVC 上编译

    我有一个用 CGo 制作的共享库 它在 Linux 和 Android 上链接得很好 但是 当使用 Microsoft Visual Studio 2017 在 Windows 10 上进行编译时 出现以下错误 Microsoft R Pr
  • 移动构造函数和 std::move 混淆

    我正在阅读有关std move http en cppreference com w cpp utility move 移动构造函数和移动赋值运算符 说实话 我现在得到的只是困惑 现在我有一堂课 class A public int key
  • 为什么人们在 ICommand 上使用 CommandManager.InvalidateRequerySuggested()?

    我正在制作自己的一些自定义 ICommand 实现 我看到很多实现都是这样的 public event EventHandler CanExecuteChanged add CommandManager RequerySuggested v
  • Lego Mindstorm NXT 的 C# 库 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是否有适用于 Lego Mindstorm NXT 的最新 C NET 库 NXT NET 乐高头脑风暴 最后更新时间 2008 年 4
  • Python:如何使用 struct.pack_into 将不同类型的数据打包到字符串缓冲区中

    我正在尝试将一些无符号 int 数据打包到使用创建的字符串缓冲区中ctypes create string buffer 这是以下代码段 以及显示错误的运行示例在键盘上 http codepad org S8nUWMcW import st
  • 对 Dictionary 的键使用锁定

    我有一个Dictionary
  • 使用 TextBox 过滤 Datagridview 行

    我有一个绑定的 datagridView 我想使用 TextBox 值对其进行过滤 我使用了这段代码 private void ChercheStextBox TextChanged object sender EventArgs e tr
  • 使用 textbox_keypress 过滤绑定源或绑定列表

    我使用 winforms 和 c 如何过滤绑定源或绑定列表 带有文本框文本 我的意思是 当我在文本框中输入时 我的网格正在使用 Like 方法而不是 equal 方法进行过滤 thanks 我使用委托来解决这个问题 一些代码如下所示 Lis
  • NamedScopes Ninject 绑定和异步(线程)

    我的项目由服务和存储库构成 所有存储库共享数据库上下文 在我的一个服务层中 我有一个使用存储库写入数据库的异步方法 Web 请求将完成并处理上下文 然后此方法才能使用它 我试着去理解命名范围 http www planetgeek ch 2
  • 在 C 中使用 fgets 和 strcmp [重复]

    这个问题在这里已经有答案了 我试图从用户那里获取字符串输入 然后根据他们输入的输入运行不同的函数 例如 假设我问 你最喜欢的水果是什么 我希望程序根据他们输入的内容进行评论 我不知道该怎么做 这是我到目前为止所拥有的 include
  • mongodb c# 选择特定字段

    需要一些帮助来创建generic按名称选择字段的方法 像这样的东西 T GetDocField
  • 如何将十进制整数转换为十六进制整数? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions cout lt
  • 哪个更好:保留向量容量、预分配大小或在循环中推回?

    我有一个函数 它将指向 char 数组和段大小的指针作为输入参数 并调用另一个需要std array
  • 无需动态分配的RSA实现

    典型的 RSA 实现包含一个多精度整数库 典型的多精度整数库使用动态分配将大整数表示为大小合适的机器字数组 我预计当使用多精度整数仅使用 RSA 2048 来加密或解密已知长度的消息 通常是对称加密密钥 时 可能会遇到数学整数的限制 并且它
  • 为什么 # 后面跟一个数字在 C plus plus 中似乎没有任何作用

    重现步骤 将以下行插入到 C 源代码的任意行中 1234 任何行 包括第一行 最后一行 甚至你也可以像这样在函数头和函数体之间输入 int foo 1234 return 0 数字可以很长 我测试了170多个字符 如果添加任何非数字字符 则

随机推荐