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-05-15PingCAP 黄东旭参与 CCF 秀湖会议,共探开源教育未来
- 2024-05-13PingCAP 戴涛:构建面向未来的金融核心系统
- 2024-05-09flutter3.x_macos桌面os实战
- 2024-05-09Rust中的并发性:Sync 和 Send Traits
- 2024-05-08使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B
- 2024-05-08完工标准(DoD)与验收条件(AC)究竟有什么不同?
- 2024-05-084万 star 的 NocoDB 在 sealos 上一键起,轻松把数据库编程智能表格
- 2024-05-08Mac 版Stable Diffusion WebUI的安装
- 2024-05-08解锁CodeGeeX智能问答中3项独有的隐藏技能
- 2024-05-08RAG算法优化+新增代码仓库支持,CodeGeeX的@repo功能效果提升