c++ - 创建我自己的 'data type'

标签 c++

我希望能够创建一个具有 3 个 float (x,y,z) 的类型。我试过:

typedef struct
{
 float x;
 float y;
 float z;
} Vertex;

但这没有用。

是否必须在 main 可以看到的地方声明它?我将如何为我创建的类型创建 getter 方法和其他方法?

最佳答案

我将如何在 C++ 中执行此操作。有关示例用法,请参见 main()。 注意这尚未经过编译或测试。

#include <iostream>

class Vertex
{
public:
  // Construction
  Vertex(float x,float y, float z) : x_(x), y_(y), z_(z) {}

  // Getters
  float getX() const {return x_;}
  float getY() const {return y_;}
  float getZ() const {return z_;}

  // Setters
  void setX(float val) {x_ = val;}
  void setY(float val) {y_ = val;}
  void setZ(float val) {z_ = val;}
private:
  float x_;
  float y_;
  float z_;
};

int main()
{
  Vertex v(6.0f,7.2f,3.3f);
  v.setZ(7.7f);
  std::cout < "vertex components are " << v.getX() << ',' << v.getY() << ',' << v.getZ() << std::endl;
}

关于c++ - 创建我自己的 'data type',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4450918/

相关文章:

c++ - 由于 SFML 框架导致 OS X 上的链接器错误

c++ - 等价于 C++ 中的 C NULL 函数指针?

javascript - 用于基于文本的冒险的 C++ Javascript 解释器

C++ 在处理视频数据和视频设备方面的优势

c++ - 为什么不打印完整的小数?

c++ - 如何强制long为4字节

c++ - 你会如何计算这个函数中的j?

C++ 使用 ODBC 绑定(bind)参数预先确定 VARCHAR 的长度

c++ - STL 嵌套容器取消引用错误

c++ - std::shared_ptr 或 std::unique_ptr 赋值运算符重载