簡體   English   中英

extern&inline的用法

[英]Usage of extern & inline

在我的C ++代碼中,我有這樣的定義;

class A {
    int i;
public:
    void setI(int temp) {
        i = temp;
    }
};

extern A* a;

之后,我有了一個函數,該函數用從參數獲得的流填充a的變量。

inline void Func() {
    ... // Stream definition with ifstream etc.
    int k;
    stream >> k;
    a->setI(k);    // Gives segmentation fault...
}

可能是什么原因? 提前致謝...

在初始化代碼中的某處使用a = new A() 更好的方法是使用參數調用Func(A *a) ,而不是使用“ extern”語句。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM