简体   繁体   English

如何在C ++中的类中初始化私有变量?

[英]How to initialize private variable in class in c++?

Error is: data member initializer is not allow 错误是: 不允许数据成员初始化程序
How to initialize private variable in class in c++? 如何在C ++中的类中初始化私有变量?

class CreditCard 
{
public:
    CreditCard();
    CreditCard(int bc);

    double getCredLimit();
    double getBalDue();
    int getAccNum();
    double credAvailable();
    int incre_Credit();
    void trans1();
    int cdInc();
    bool addingChrg(double chrgAmt, const std::string& desc);

    ~CreditCard();

private:
    int accNo;
    bool err;
    string mssg;
    double dueAmt;

    void wtStats();
    void logFl(string qu);
    string credName, credlastName;
    double lim;
    double bala = lim;     //Here i getting error how to solve this
    double payscale;
    double chrg;
};

how to intialize private varable in class in c++; 如何在C ++中的类中初始化私有变量; and thanks in advance :) 并提前感谢:)

bala is being initialized to lim , but lim is not initialized. bala正在初始化为lim ,但是lim没有初始化。 You need to initialize `lim' too. 您还需要初始化`lim'。 For example: 例如:

double lim = 0.0;
double bala = lim;

You should initialize all your members though. 不过,您应该初始化所有成员。 Currently, you don't seem to initialize any of them. 当前,您似乎没有初始化它们中的任何一个。

Initialize it within a constructor: 在构造函数中初始化它:

class CreditCard 
{
public:
    CreditCard() {
        lim = -1;
        bala = lim;
    }
    // rest of code
};

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM