• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Помогите разобраться с классами

  • Автор темы Guest_dmitry303
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest_dmitry303

Помогите пожалуйста.
Есть такая проблема.
Мне нужно наследовать массив от класса.

Просто в C++ получается..

Код:
#include <iostream.h>
void main(){
class A{
 float x;
};
A a_[100];
a_[1].x=2;
};

А под WinAPI тоже самое выдается ошибки

Код:
class A{
 float x;
};
A a_[100];
a_[1].x=2;

Что делать???
 
K

KINDER

Я вижу здесь ошибку:
Код:
a_[1].x=2;
Ты не можешь так сделать.
По умолчанию член класса x является приватным (private).
Доступ к приватным членам класса имеет только функция, сама являющаяся членом класса.
А функция main() имеет доступ только к публичным членам класса (public).

Во-вторых, обьявлять класс

Код:
class A{
 float x;
};
лучше не в теле функции main() а до нее, сразу после строки #include <iostream.h>
Это чтобы не путаться! Так все делают.

Вот как надо:

Код:
#include <iostream.h>

class A{
public:
 float x;
};

void main(){
A a_[100];
a_[1].x=2;
};

или так
Код:
#include <iostream.h>

class A{
 float x;
public:
 Set(float val) { x=val; }
};

void main(){
A a_[100];
a_[1].Set(2);
};

извините за зеленый шрифт, непонятно откуда появился черный фон, и пришлось так сделать. я здесь первый раз...
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!