#ifndef RAM_H
#define RAM_H
#include <systemc.h>
SC_MODULE(ram) {
void ram_proc();
SC_HAS_PROCESS(ram);
private:
sc_clock clock;
};
#endif
然後在ram.cpp我有以下代碼SystemC的構造器初始化失敗
#include "ram.h"
ram::ram(sc_module_name name_): clock("clock",1,SC_NS) {std::cout<<"I am in clock "<<std::endl;}
{ //the error is occurring hier
SC_THREAD(ram_proc);
}
void ram::ram_proc() {
std::cout<<"I am in method ram_proc "<<std::endl;
}
的問題是,我收到此錯誤
預期不合格-id在'{'標記之前 {
您有兩個範圍塊。你的意思是有''std :: cout <<「我在時鐘」<< std :: endl;}'與構造函數在同一行? – NathanOliver
是的。時鐘是內存的成員,我試圖初始化構造函數,在時鐘塊中放置一些代碼 – akaAlso
您不能只將一個塊添加到另一個塊中。將要添加的代碼行添加到已存在的塊中。 – NathanOliver