В очередной раз сталкиваюсь с подобным сообщением об ошибке:
Ошибка LNK2019 ссылка на неразрешенный внешний символ _WinMain@16 в функции "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ).
A3 C:\Users\arsenij\source\repos\prog_tech\MSVCRTD.lib(exe_winmain.obj) 1
И сразу вслед за этим ошибка LNK1120: неразрешённых внешних элементов 1 Вот пример кода:
#ifndef _RECTANGLE_HPP_
#define _RECTANGLE_HPP_
#include "shape.hpp"
#include <cassert>
namespace alekseev
{
class Rectangle : public Shape
{
public:
Rectangle(const double width, const double height, const point_t& pos);
void move(const point_t& pos) override;
void move(const double dx, const double dy) override;
rectangle_t getFrameRect() const override;
double getArea() const override;
point_t getPos() const;
double getWidth() const;
double getHeight() const;
private:
double width_;
double height_;
point_t pos_;
};
}
#endif
Main:
#include <iostream>
#include "../common/circle.hpp"
#include "../common/triangle.hpp"
#include "../common/rectangle.hpp"
int main()
{
return 0;
}
Rectangle.cpp:
#include "rectangle.hpp"
alekseev::Rectangle::Rectangle(const double width, const double height, const point_t& pos) :
width_(width),
height_(height),
pos_(pos)
{
assert((width > 0) && (height > 0) && "Wrong args for rectangle");
}
void alekseev::Rectangle::move(const point_t& pos)
{
pos_ = pos;
}
void alekseev::Rectangle::move(const double dx, const double dy)
{
pos_.x += dx;
pos_.y += dy;
}
alekseev::rectangle_t alekseev::Rectangle::getFrameRect() const
{
rectangle_t tempRect;
tempRect.height = height_;
tempRect.width = width_;
tempRect.pos = pos_;
return( tempRect );
}
double alekseev::Rectangle::getArea() const
{
return ( width_ * height_ );
}
alekseev::point_t alekseev::Rectangle::getPos() const
{
return ( pos_ );
}
double alekseev::Rectangle::getWidth() const
{
return ( width_ );
}
double alekseev::Rectangle::getHeight() const
{
return ( height_ );
}
Причём на MinGWшном компиляторе всё работает. Здесь я уже не знаю что делать, и чувствую, что моих знаний тут явно недостаточно. В интернетах видел людей с такой же проблемой, то что они советуют не помогло надеюсь на понимание