C++函数名称作为参数
2022/8/28 14:22:58
本文主要是介绍C++函数名称作为参数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 #ifndef CHANPROJECT_VECTOR2D_H 2 #define CHANPROJECT_VECTOR2D_H 3 #include "ChanGlobal.h" 4 5 namespace Common{ 6 template <typename T> 7 class Vector2D{ 8 public: 9 Vector2D() = default; 10 virtual ~Vector2D() = default; 11 /** 12 * @brief 构造函数 13 * @param x x的值 14 * @param y y的值 15 * @since 1.0.0 16 */ 17 Vector2D(const T& x, const T& y){ 18 this->m_X = x; 19 this->m_Y = y; 20 } 21 /** 22 * @brief 返回点的x值 23 * @return 该点的x值 24 * @since 1.0.0 25 */ 26 ChanNodiscard T x() const{ 27 return m_X; 28 } 29 /** 30 * @brief 设置点的x值 31 * @param x 要赋值给x的值 32 * @since 1.0.0 33 */ 34 void setX(const T& x){ 35 m_X = x; 36 } 37 /** 38 * @brief 返回点的y值 39 * @return 该点的y值 40 * @since 1.0.0 41 */ 42 ChanNodiscard T y() const{ 43 return m_Y; 44 } 45 /** 46 * @brief 设置点的x值 47 * @param y 要赋值给y的值 48 * @since 1.0.0 49 */ 50 void setY(const T& y){ 51 m_Y = y; 52 } 53 /** 54 * @brief 比较两个对象是否相等 55 * @param p 要比较的对象 56 * @param sameWith 比较函数 57 * @note 如果比较函数‘sameWith’为nullptr,则使用“==”比较 58 * @return 59 */ 60 bool sameWith(Vector2D<T> *p, bool (*sameWith)(T,T)) const{ 61 if(sameWith == nullptr){ 62 return (m_X == p->m_X) && (m_Y == p->m_Y); 63 }else if(sameWith(m_X, p->m_X) && sameWith(m_Y, p->m_Y)){ 64 return true; 65 }else{ 66 return false; 67 } 68 }; 69 70 protected: 71 /** 72 * @brief [me]的x值 73 * @since 1.0.0 74 */ 75 T m_X = 0.0; 76 /** 77 * @brief [me]的y值 78 * @since 1.0.0 79 */ 80 T m_Y = 0.0; 81 }; 82 } 83 #endif //CHANPROJECT_VECTOR2D_H
这篇关于C++函数名称作为参数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享