Mam następujące klasy podstawowej„Używanie” słowo kluczowe aby zadzwonić klasa bazowa konstruktor
class Grammateas
{
public:
Grammateas(std::string name):_name(name){};
virtual ~Grammateas(){};
private:
std::string _name;
};
oraz następujące klasy pochodnej
class Boithos final : public Grammateas
{
public:
//using Grammateas::Grammateas;
Boithos(int hours):Grammateas("das"),_hours(hours){};
virtual ~Boithos(){};
private:
int _hours;
};
chcę użyć konstruktora klasy bazowej, aby utworzyć obiekt jak to
Boithos Giorgakis(5); //works
Boithos Giorgakis("something"); //Bug
czytałem, że można używać za pomocą słowa kluczowego, ale gdy próbuję go używać jak
using Grammateas::Grammateas;
kompilator zwróci komunikat
error: ‘Grammateas::Grammateas’ names constructor
możesz pomóc mi zrozumieć, używając słowa kluczowego z konstruktorów?
To jest dla * dziedziczenia * konstruktorów ... –
W końcu stwierdziłem, że ta funkcja jest dostępna tylko w GCC 4.8 Mam gcc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2 –