C++奇怪的问题,未定义的引用

2023-12-19

出现错误:neljastest.cpp:对 Vector2::Vector2(float, float) 的未定义引用

内尔贾斯特.cpp:

    #include <cstdlib>
#include <iostream>
#include "../include/Vector2.h"
#include "../include/neljas.h"

using namespace std;

int main (int argc, char* argv[]) {
     Vector2 p1 (1.0, 2.0);
     Vector2 p2 (0.0, 0.0);
     Vector2 p3 (5.0, 2.0);
    return EXIT_SUCCESS;
}

矢量2.h:

#ifndef VECTOR2_H
#define VECTOR2_H

#include <iostream>
using std::ostream;

class Vector2 {

public:
    float x;
    float y;

    Vector2();

    Vector2(float nx, float ny);

    float distanceFrom(Vector2 v);


};


ostream& operator << (ostream& valja, Vector2 v);

#endif

矢量2.cpp:

    #include "../include/Vector2.h"
#include <cmath>

using namespace std;

Vector2::Vector2() {
    x = 0;
    y = 0;
}

Vector2::Vector2(float nx, float ny) {
    x = nx;
    y = ny;
}

float Vector2::distanceFrom(Vector2 v) {
    return sqrt( (x - v.x)*(x - v.x) + (y - v.y)*(y - v.y) );
}

ostream& operator << (ostream& os, Vector2 v) {
    return os << "(" << v.x << "," << v.y << ")";
}

C/C++标题也区分大小写。

似乎在矢量2.cpp and 内尔贾斯特测试.cpp您必须将包含更改为:

#include "../include/Vector2.h"

To:

#include "../include/vector2.h"

我将所有源代码粘贴到同一个文件夹中,并使用以下命令成功编译它们:

g++ neljastest.cpp vector2.cpp -o neljastest

Edit:

您的问题是 neljastest.cpp 的链接过程依赖于 src/vector2.cpp,并且您没有在 Makefile 上执行此操作

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

C++奇怪的问题,未定义的引用 的相关文章

随机推荐

  • Python 循环遍历文件夹并重命名文件

    我试图浏览一堆文件夹并进入每个文件夹并将特定文件重命名为不同的名称 我只是陷入了文件夹循环部分 我的文件系统如下所示 Root Directory Folder File1 File2 File3 Folder File1 File2 Fi
  • 将 pandas 中的通话数据拆分为 15 分钟间隔

    我是 python 和 pandas 的新手 尽管我研究了很多关于间隔的知识 但我找不到任何解决我的问题的方法 我希望有人可以提供帮助 这是我的 DF 示例 df pd DataFrame data Mel Gibson German 20
  • Laravel 混合版本控制不会删除旧的构建文件

    我正在使用 Laravel 5 4 和 mix 来版本化我的 javascript 和 scss 文件 问题是 它不会清除以前构建的文件 而只是添加一个具有不同文件名的新文件 即app 9d3e179e85922aad6ccf js 在我开
  • Go 中的符号 [:] 是什么意思?

    我在一些代码中发现了这一点 h s Hash tx sig err crypto Sign h prv 什么是 意思是 如果这是数组的完整切片 为什么不传递数组本身呢 这是什么编码风格 我想知道 在Go中 数组和切片略有不同 不能互换使用
  • AJAX 分页后的 WordPress 类别

    我真的很难找到一种方法来使用 ajax 为我的 WordPress 帖子创建分页 我找到的解决方案不起作用 要获得更多信息 这里有一个链接 底部有用于分页的项目符号 单击这些按钮后 我希望网站能够加载新帖子而不触发页面刷新 http max
  • 填充 va_list

    有没有办法创建一个va list从头开始 我正在尝试调用一个需要va list作为参数 func void entry int num args va list args char key 来自不接受可变数量参数的函数 我能想到的唯一方法是
  • 信号无法通过 execv() 正确重新启用

    我正在为我正在开发的 Linux 发行版编写一个系统关键程序 它需要在收到某些信号时自行重新启动 以避免崩溃 问题是 重新启动后 我无法重新启用该信号 也就是说 信号不能被接收两次 execv 自身执行后 当新进程调用 signal 来设置
  • 简单不平衡搜索树的平均渐近深度是多少?

    对于平衡搜索树 所有情况都是 O log N 对于不平衡搜索树 最坏情况是 O N 例如插入 1 2 3 4 最好情况复杂度是平衡时 例如插入 6 4 8 3 5 7 我们如何定义不平衡搜索树的平均情况复杂度 二叉树的平均高度为 Theta
  • docker-compose 使用独特的环境变量进行扩展

    我的 docker compose 文件中有一个示例计算服务 它按预期工作得很好 version 3 services compute service image dummy compute environment INPUT 2 然而 有
  • mongodb:我应该在更新时始终使用“安全”选项吗

    在处理 mongodb 时 我什么时候应该在查询中使用 safe true 现在我使用 安全 选项只是为了检查我的查询是否已成功插入或更新 不过 我觉得这可能有点过头了 我是否应该假设 99 的时间 我的查询 假设它们被正确编写 将被插入
  • Photoshop 的 RGB 级别与 ImageMagick

    我正在尝试将 Photoshop 中创建的一些效果转换为与 php imagemagick 一起使用的代码 现在我对如何重新创建 Photoshop 的 RGB 级别功能特别感兴趣 我不太熟悉 Photoshop 界面 但这是我得到的信息
  • 从历史记录中删除合并并重新调整非顺序提交的基础

    我有以下 git 历史记录 我想在其中压缩提交并删除多个合并 git log graph oneline all 80e2fa1 I want to squash this commit 7850013 Merge branch maste
  • findViewById如何初始化视图

    我刚刚为那些被 findViewById 困惑的人写了一个答案 我意识到我的理解存在差距 这个问题只是出于知识和好奇心 考虑一下 button Button findViewById R id button findViewById返回一个
  • MySQL DATE_ADD 不起作用

    我有两列 开始时间和持续时间 我正在尝试计算结束时间 问题是我得到空结果 我已经尝试了几件事 DATE ADD startTime INTERVAL duration MINUTE AS endTime DATE ADD startTime
  • 将 pthread 作为输入并将其挂起的函数

    我正在尝试从 POSIX 中的 ExpressLogic 移植实时 Thread Metric 以便为我的论文对 Linux Xenomai 和 RTAI 的 PREEMPT RT 补丁进行基准测试 他们提供了一个具有以下函数的 C 源文件
  • 使用 Apache .htaccess 限制直接文件访问

    如何限制对每个具有 inc 的文件的直接访问 在文件名中 基本上我这样做是为了指出必须仅包含特定文件 已经使用 Apache 和 mod rewrite 来实现基本的 SEO 目的 这 有点 超出了我的知识范围 希望 htaccess 应该
  • Android Studio 上的省电模式未禁用

    我多次尝试在 Android Studio 1 2 1 1 上禁用省电模式以激活 Code Complete 功能 但没有禁用 我在 Windows 7 上运行工作室 可能是什么问题呢 请有人帮忙 你可以试试这个 您还可以检查文件菜单上的省
  • JavaScript 切换

    我制作了一个 JavaScript 函数来隐藏单击按钮时的链接及其在该函数中的工作 但是当它
  • 在参数数组中传递整数数组

    我正在尝试在 pg promise 的参数数组中传递参数数组 如建议的那样pg promise 文档 https github com vitaly t pg promise wiki Learn by Example passing ar
  • C++奇怪的问题,未定义的引用

    出现错误 neljastest cpp 对 Vector2 Vector2 float float 的未定义引用 内尔贾斯特 cpp include