class cookie{
public:
cookie() = default;
int*p_member{};
int case{};
private:
};
#include <iostream>
using namespace std;
int main(){
cookie cold;
cout << "Type what you want into the cookie p_member variable " << endl;
std::cin >> cold.*p_member; // this doesn't work
}
我想知道如何訪問類指標變數,將資料放入其中,然后取消參考。
uj5u.com熱心網友回復:
首先,確保您沒有取消參考 null 或未初始化的指標。否則你會有未定義的行為。
它是關于一個指標的成員。我想為該成員分配一個值,然后取消對該成員的參考,以便將其列印出來。
您可以為此任務使用指向成員語法的指標,如下所示:
class cookie{
public:
int var;
int cookie::*p_member=&cookie::var; //p_member can point to an int data member of an cookie object
};
int main(){
cookie cold{};
cout << "Type what you want into the cookie p_member variable " << endl;
std::cin >> cold.*cold.p_member; //take input from user directly into var using member pointer syntax
std::cout << "var: " << cold.var << std::endl; //print var to confirm that it is correctly set
}
作業演示
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/506460.html
上一篇:學習ASP.NET Core Blazor編程系列二——第一個Blazor應用程式(完)
下一篇:是否建議在回圈內宣告變數?
