Size: a a a

2020 August 23

D

Danya in supapro.cxx
FWorld.deb
Как указать задержку на линуксе в коде С++?
Как и на другой любой системе:
using namespace std::chrono_literals;
std::this_thread::sleep_for(500ms);
источник

a

anton in supapro.cxx
class A {
 public:
   int x;
};
class B : public A {
 public:
   B(int num) : x(num) {}
};

int main(){}

=>

test.cpp: In constructor ‘B::B(int)’:
test.cpp:7:16: error: class ‘B’ does not have any field named ‘x’
  B(int num) : x(num) {}

what? why?
источник

LA

Liber Azerate in supapro.cxx
anton
class A {
 public:
   int x;
};
class B : public A {
 public:
   B(int num) : x(num) {}
};

int main(){}

=>

test.cpp: In constructor ‘B::B(int)’:
test.cpp:7:16: error: class ‘B’ does not have any field named ‘x’
  B(int num) : x(num) {}

what? why?
Потому что надо звать конструктор А
источник

a

anton in supapro.cxx
Liber Azerate
Потому что надо звать конструктор А
а как это оформить, подскажите, пожалуйста
источник

LA

Liber Azerate in supapro.cxx
anton
а как это оформить, подскажите, пожалуйста
Для начала просто определить этот конструктор в А, а потом передать ему int num так же, как вы пытаетесь это сделать с х
источник

a

anton in supapro.cxx
слушайте, я засунул это в тело, и ошибка не выдается больше:
class A {
 public:
   int x;
};

class B : public A {
 public:
   B(int num) {
     x = num;
   }
};

int main(){}
источник

a

anton in supapro.cxx
там наверное какой-то неявный механизм, сработал
источник

EV

Eduard Voronkin in supapro.cxx
Вполне себе явный
источник

LA

Liber Azerate in supapro.cxx
anton
слушайте, я засунул это в тело, и ошибка не выдается больше:
class A {
 public:
   int x;
};

class B : public A {
 public:
   B(int num) {
     x = num;
   }
};

int main(){}
Ну да, но вообще наследник должен вызывать конструктор родителя
источник

a

anton in supapro.cxx
а, вот так:
#include <iostream>
class A {
 public:
   A(int num) : x(num) {};
   int x;
};

class B : public A {
 public:
   B(int num) : A(num) {}
};

int main(){}
источник

RN

Ruslan Neshta in supapro.cxx
х можно приватным сделать в классе А но как хочешь
источник

a

anton in supapro.cxx
Ruslan Neshta
х можно приватным сделать в классе А но как хочешь
а он унаследуется?
источник

RN

Ruslan Neshta in supapro.cxx
почитай про можификаторы доступа, они влияют только на доступ
источник

a

anton in supapro.cxx
Ruslan Neshta
почитай про можификаторы доступа, они влияют только на доступ
ок, да, глупый был вопрос
источник

RN

Ruslan Neshta in supapro.cxx
anton
ок, да, глупый был вопрос
это нормально задавать глупые вопросы
источник

RN

Ruslan Neshta in supapro.cxx
гораздо хуже молчать и никогда не спрашивать
источник

a

anton in supapro.cxx
https://pastebin.com/JBr76PY5

я придумал сделать общую переменную через указатели на неё, это очень страшно?
источник

AP

Alexander Potapov in supapro.cxx
Не очень красиво
источник

AP

Alexander Potapov in supapro.cxx
А почему не объявить static поле string в Base классе?
источник

a

anton in supapro.cxx
Alexander Potapov
А почему не объявить static поле string в Base классе?
test.cpp:8:21: error: local class ‘class main()::Base’ shall not have static data member ‘std::__cxx11::string main()::Base::gs’ [-fpermissive]
источник