zur Funktion Ich habe einen folgenden Code Basissystem auf meinem PC (x86) zu emulieren:Lookup-Tabelle Zeiger Array C++ Leistung
typedef void (*op_fn)();
void add()
{
//add Opcode
//fetch next opcode
opcodes[opcode]();
}
void nop()
{
//NOP opcode
//fetch next opcode
opcodes[opcode]();
}
const op_fn opcodes[256] =
{
add,
nop,
etc...
};
und ich nenne den „Tisch“ über opcodes[opcode]()
Ich versuche, die Leistung zu verbessern von meinem Dolmetscher. Was ist jede Funktion, wie
inline void add()
inline void nop()
inlining Gibt es irgendwelche Vorteile, es zu tun?
Gibt es trotzdem etwas schneller? Danke
Frage zu Arbeitscode sind vielleicht besser für http://codereview.stackexchange.com/ – user463035818
Können Sie ein Spielzeug Beispiel für tatsächlichen Arbeitscode erstellen, die Ihrem Muster entspricht? Sogar mit 3 Opcodes? Wie geschrieben, können große Leistungsprobleme durch Ihren Pseudo-Code verborgen werden. Auch "mach es besser" ist eine schlechte Frage; explizite Möglichkeiten, wie der Code fehlschlägt, ist besser, oder warum etwas unerwartet ist. – Yakk
@ tobi303 Dies ist ein Beispiel/Pseudo-Code, der bei Code Review nicht im Fokus steht. Auf dieser Site benötigen wir echten, funktionierenden Code. Siehe [Eine Anleitung zur Code-Überprüfung für Stack-Overflow-Benutzer] (http://meta.codereview.stackexchange.com/questions/5777/a-guide-to-code-review-for-stack-overflow-users) – Phrancis