c++在类中添加头文件简直要了我的命

C++ adding headers in class is killing me

本文关键字:我的 文件 添加 c++      更新时间:2023-10-16

我必须将另一个类文件包含到我的.h文件中,但它一直给我奇怪的错误。

它没有拾取vector类。我已经提到了我得到的线上的错误。上面写着vector is not a Template。我还试图在.cpp文件中包含<vector>库,但它不起作用。

我MidPointRelations.cpp

:

#include "stdafx.h"
#include "MidPointRelations.h"
MidPointRelations::MidPointRelations()
{
}

MidPointRelations::~MidPointRelations()
{
}

MidPointRelations::MidPointRelations(MyLines line, float midpointdis, float aspect)
{
    mylinesss.push_back(line);
    midpointDistance = midpointdis;
    aspectratio = aspect;
}
float MidPointRelations::getAspectRatio(){ return aspectratio; }
void MidPointRelations::Add(MyLines line)
{
    mylinesss.push_back(line);
};
vector<MyLines> MidPointRelations::getLines()  //<<----- error
{
    return mylinesss; 
}
float getMidPointDistance() 
{
    return midpointDistance; 
}
我MidPointRelations.h

:

#pragma once
#include "MyLines.h"
#include <vector>
class MidPointRelations
{
private:
    std::vector<MyLines> mylinesss;
    float midpointDistance;
    float aspectratio;
public:
    MidPointRelations(MyLines line, float midpointdis, float aspect);
    MidPointRelations();
    ~MidPointRelations();
    float getAspectRatio();
    void Add(MyLines line);
    std::vector<MyLines> getLines();
    float getMidPointDistance();
};

简单的排版错误:将vector替换为std::vector

你可以写'using std::vector',甚至'using namespace std',然后只使用vector,但是那样会造成命名空间污染。我当然建议你不要在标题中这样做。