php中文网

C++ 如何指定函数返回结构体类型?

php中文网

c++++ 中有两种方法指定函数返回结构体类型:通过值返回结构体:返回结构体的副本。通过指针返回结构体:返回指向结构体实例的指针,需要手动释放内存。

C++ 中指定函数返回结构体类型的正确方式

在 C++ 中,你可以通过使用 struct 关键字来定义结构体类型,并使用 -> 运算符访问其成员。对于函数返回结构体类型,有两种主要方法:

方法 1:通过值返回结构体

立即学习“C++免费学习笔记(深入)”;

#include <iostream>

struct Point {
  int x;
  int y;
};

Point getPoint() {
  Point p = {1, 2};
  return p;
}

int main() {
  Point pt = getPoint();
  std::cout << pt.x << ", " << pt.y << std::endl;
  return 0;
}

方法 2:通过指针返回结构体

#include <iostream>

struct Point {
  int x;
  int y;
};

Point* getPoint() {
  Point* p = new Point();
  p->x = 1;
  p->y = 2;
  return p;
}

int main() {
  Point* pt = getPoint();
  std::cout << pt->x << ", " << pt->y << std::endl;
  delete pt; // 释放动态分配的内存
  return 0;
}

实战案例:计算两点之间的距离

#include <iostream>
#include <cmath>

struct Point {
  int x;
  int y;
};

double distance(Point p1, Point p2) {
  return std::sqrt(pow(p2.x - p1.x, 2) + pow(p2.y - p1.y, 2));
}

int main() {
  Point p1 = {1, 2};
  Point p2 = {4, 5};

  std::cout << "两点之间的距离为:" << distance(p1, p2) << std::endl;
  
  return 0;
}

以上就是C++ 如何指定函数返回结构体类型?的详细内容,更多请关注php中文网其它相关文章!