Anhang C. Implementierung von MoveSpecial Member Functions
In Kapitel 3 und im größten Teil dieses Buches haben wir uns auf den vom Compiler bereitgestellten Standard-Konstruktor und den Standard-Zuweisungsoperator verlassen. Für diejenigen, die eine ausführlichere Erklärung über die Standardfälle hinaus wünschen, werden in diesem Anhang ihre Implementierungen in der Klasse OptionInfo besprochen, wobei das Standardverhalten einfach als Beispiel nachgebildet wird.
Verschiebevorgänge hängen auch mit den Speicherzuweisungen zusammen, die in einem vector Container üblich sind und in Kapitel 4 ausführlich behandelt werden. Die Lektüre dieses Abschnitts ist nicht zwingend erforderlich, aber wir stellen ihn hier zur Verfügung, falls du weitere Informationen benötigst.
Zurück zur Klasse OptionInfo: Die default Einstellungen, die den Compiler anweisen, Standardversionen der Verschiebeoperationen zu erzeugen, wurden entfernt. Stattdessen werden sie ähnlich wie die Kopiervorgänge deklariert:
class OptionInfo
{
public:
OptionInfo(std::unique_ptr<Payoff> payoff, double time_to_exp);
double option_payoff(double spot) const;
double time_to_expiration() const;
void swap(OptionInfo& rhs) noexcept;
OptionInfo(const OptionInfo& rhs);
OptionInfo& operator =(const OptionInfo& rhs);
OptionInfo(OptionInfo&& rhs) noexcept;
OptionInfo& operator =(OptionInfo&& rhs) noexcept;
~OptionInfo() = default;
private:
std::unique_ptr<Payoff> payoff_ptr_;
double time_to_exp_;
};
Das erste Detail, das dir wahrscheinlich ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access