gpt4 book ai didi

c++ - 推广结构访问的有效且实用的方法?

转载 作者:太空宇宙 更新时间:2023-11-03 10:21:06 24 4
gpt4 key购买 nike

我有以下内容:

Struct A {
char a;
char b[10];
int c;
float d;
}

Struct B {
float d;
char b[10];
char a;
int c;
bool e;
}

我想制作一个接受结构 A 或 B 的通用函数来访问如下元素:

void SetD(A a, float f) { a.d = f; }

将会有许多不同的结构(大多数具有相同的元素)和许多操作它们的函数。

我试图概括访问权限,这样我就不必将每个方法复制到每个 Struct 中,从而导致重复代码。不确定 instanceof 还是模板在这里最好。关于如何优雅地实现这一点的任何想法?让我知道是否可以提供更多说明。

最佳答案

怎么样:

template< typename T > void setD( T &t, float f ) { t.d = f; }

注意 struct 关键字是小写的,并且结构需要半色 ; 在右括号之后。

关于c++ - 推广结构访问的有效且实用的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4784055/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com