🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ValRange.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "Value.hpp"
25
26AST_NAMESPACE_BEGIN
27
28
33class ValRange : public Value
34{
35public:
36 AST_EXPR(ValRange)
41 ValRange(double start, double stop, double step=1.0);
42 ~ValRange() override = default;
43
46 double start() const { return start_; }
47
50 double stop() const { return stop_; }
51
54 double step() const { return step_; }
55
58 int size() const { return (int)((stop_ - start_) / step_) + 1; }
59
63 std::string getExpression(Object* context) const override;
64
65protected:
66 double start_;
67 double stop_;
68 double step_;
69};
70
71
72AST_NAMESPACE_END
对象基类,继承自该类的对象可以使用运行时类型信息相关功能,实现强弱引用计数、运行时元信息(属性访问、序列化等)等基础功能
定义 Object.hpp:81
范围值
定义 ValRange.hpp:34
double stop() const
获取范围的结束值
定义 ValRange.hpp:50
double start() const
获取范围的起始值
定义 ValRange.hpp:46
double step() const
获取范围的步长
定义 ValRange.hpp:54
int size() const
获取范围的元素数量
定义 ValRange.hpp:58
值对象基类
定义 Value.hpp:36