写好节点插入和连接,支持有向图无向图,支持权

This commit is contained in:
2024-12-05 01:21:44 +08:00
parent a56aa1d048
commit 238975f638
4 changed files with 109 additions and 7 deletions
@@ -0,0 +1,25 @@
// 这是一个异常,当用户给的节点id超出最大值时抛出
#ifndef NODEIDOUTOFRANGEEXCEPTION_H
#define NODEIDOUTOFRANGEEXCEPTION_H
#include <exception>
#include<string>
class NodeIdOutOfRangeException : public std::exception{
private:
std::string message;
public:
NodeIdOutOfRangeException():message("You input id is out of range"){}
NodeIdOutOfRangeException(const std::string& msg) : message(msg) {}
NodeIdOutOfRangeException(const std::string& msg,int errCode):message(msg+"Err code: "+std::to_string(errCode)){}
virtual ~NodeIdOutOfRangeException() noexcept {}
virtual const char* what() const noexcept override {
return message.c_str();
}
};
#endif //NODEIDOUTOFRANGEEXCEPTION_H
@@ -0,0 +1,22 @@
// 这是一个异常,当用户试图连接图中的两个相同节点时抛出
#ifndef SAMENODECONNECTEXCEPTION_H
#define SAMENODECONNECTEXCEPTION_H
#include <exception>
#include <string>
class SameNodeConnectException : public std::exception{
private:
std::string message;
public:
SameNodeConnectException():message("Don't connect same node"){}
SameNodeConnectException(const std::string& msg) : message(msg) {}
SameNodeConnectException(const std::string& msg,int errCode):message(msg+"Err code: "+std::to_string(errCode)){}
virtual ~SameNodeConnectException() noexcept {}
virtual const char* what() const noexcept override {
return message.c_str();
}
};
#endif //SAMENODECONNECTEXCEPTION_H