Ich finde Konstruktor Vererbung Feature in C++ 11 ziemlich nützlich. Allerdings finde ich die Syntax etwas seltsam. Das folgende Beispiel funktioniert gut, aber ich verstehe nicht, warum ich using sysTrajectory::sysTrajectory
im Gegensatz zu using sysTrajectory<Real>::sysTrajectory<Real>
beim Erben von einer Vorlage-Klasse angeben muss? Letzteres gibt den folgenden Fehler: erwartet ';' vor '<' Token mit sysTrajectory :: sysTrajectory ;. Könnte es beim Erben von Konstruktoren aus einer Klassenvorlage zu möglichen Problemen kommen?C++ 11 Erben Vorlage Konstruktoren
class sysRealTrajectory: public sysTrajectory<Real>
{
public:
/**
* Default constructor
*/
inline sysRealTrajectory(void);
using sysTrajectory::sysTrajectory;
/**
* Default destructor
*/
inline ~sysRealTrajectory(void);
};
Haupt:
Real a;
a=5;
sysTrajectoryPoint<Real> TP0(1.0,a);
sysRealTrajectory Trajectory(TP0);
Sie für die Erklärung danken. – user1391279