gpt4 book ai didi

c++ - 将私有(private)结构设置为返回值

转载 作者:太空宇宙 更新时间:2023-11-04 13:08:56 29 4
gpt4 key购买 nike

对于类赋值,我们需要在类中有一个私有(private)结构,但我们需要有相同的结构作为返回值(而不是指向它的指针)。沿着这些线的东西:

private:
struct Employee
{
int id;
string name;
};

public:
struct Employee find(int key);

这是否可能仅使用 STL?

最佳答案

可以做到,但意义不大,因为接口(interface)应该是公开的。

例如

#include <iostream>
#include <string>

struct C
{
private:
struct Employee
{
int id;
std::string name;
};

Employee e = { 1, "First" };

public:
Employee find(int key) const
{
return key == e.id ? e : Employee {};
}
};

int main()
{
C c;

auto e = c.find( 1 );

std::cout << e.name << std::endl;

return 0;
}

程序输出为

First

关于c++ - 将私有(private)结构设置为返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40824404/

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