![](/img/trans.png)
[英]How can I make function that take a string and return a char array
[英]How can I return two char* class variables in one function?
我有以下 class 定義和 GetName function 應該返回全名(名字和姓氏),它們是 char*。 有人告訴我將它們連接成一個全局變量,然后在 function 中返回它,但我就是不知道該怎么做。
有人可以給我舉個例子嗎?
class bank_Database
{
int AccountNumber;
std::string CNP, PhoneNumber;
char* First_Name[256], Last_Name[256];
float MoneyBalance;
public:
bank_Database() {};
void AddAccount(); //function to create an account
void ModifyDetails(); //function to modify name, phone and balance.
void DisplayAccDetails(); //function to display details
char* GetName(); //functions to get details
const std::string Get_PhoneNumber();
const int Get_AccNumber();
const std::string Get_CNP();
};
是的,您可以返回兩個 arrays:
auto get() {
std::array<std::array<char, 256>, 2> names;
// ...
return names;
}
或者,您可以創建一個名稱 object 並返回:
struct Name
{
std::array<char, 256> first;
std::array<char, 256> last;
};
auto get()
{
Name name;
// ...
return name;
}
最后,您可以考慮使用std::string
代替 arrays,因為它更靈活。
返回結果為 std::pairstd::string,std::string result= std::make_pair(firstname, secondname);
還考慮使用結構化綁定來使用 function 的結果
自動[第一,第二] =獲取名稱()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.