Перейти к содержанию

Контрольная работа по программированию


pacman

Рекомендуемые сообщения

Ладно, сделаю тебе доброе дело.

 

c++11:

1.

#include <iostream>

struct Base {
	Base() { }
	~Base() { }
	char base_func(int a, int  {
		return (char)((a + *(a + );
	}
};

int main() {
	auto *b = new Base;
	std::cout << b->base_func(1, 2) << std::endl;
	delete b;
}
2.

#include <iostream>

struct Base {
	Base() { }
	~Base() { }
	char base_func(int a, int  {
		return (char)((a + *(a + );
	}
};

class Derived : public Base {
	int a, b;
public:
	Derived() = default;
	Derived(int a, int  {
		this->a = a;
		this->b = b;
	}
	~Derived() {} 
	void put(int a, int  {
		this->a = a;
		this->b = b;
	}
	void get(int &a, int  {
		a = this->a;
		b = this->b;
	}
	int derived_func() {
		return base_func(a, ;
	}
};

int main() {
	auto *d = new Derived(1, 2);
	std::cout << d->derived_func() << std::endl;
	delete d;
}
3.

#include <iostream>

template <typename T>
struct Base {
	Base() { }
	~Base() { }
	char base_func(T a, T  {
		return (char)((a + *(a + );
	}
};

template <typename T>
class Derived : public Base<T> {
	T a, b;
public:
	Derived() = default;
	Derived(T a, T  {
		this->a = a;
		this->b = b;
	}
	~Derived() {} 
	void put(T a, T  {
		this->a = a;
		this->b = b;
	}
	void get(T &a, T  {
		a = this->a;
		b = this->b;
	}
	T derived_func() {
		return this->base_func(a, ;
	}
};

int main() {
	auto *d = new Derived<int>(1, 2);
	std::cout << d->derived_func() << std::endl;
	delete d;
}
4.

#include <iostream>

class Base {
protected:
	Base() { }
public:
	virtual ~Base() { }
	virtual char base_func(int a, int  {
		return (char)((a + *(a + );
	}
	virtual int derived_func() = 0;
};

class Derived : public Base {
	int a, b;
public:
	Derived() = default;
	Derived(int a, int  {
		this->a = a;
		this->b = b;
	}
	~Derived() {} 
	void put(int a, int  {
		this->a = a;
		this->b = b;
	}
	void get(int &a, int  {
		a = this->a;
		b = this->b;
	}
	virtual int derived_func() {
		return base_func(a, ;
	}
};

int main() {
	Base *d = new Derived(1, 2);
	std::cout << d->derived_func() << std::endl;
	delete d;
}

 

 

c++03:

1.

#include <iostream>

struct Base {
	Base() { }
	~Base() { }
	char base_func(int a, int  {
		return (char)((a + *(a + );
	}
};

int main() {
	Base *b = new Base;
	std::cout << b->base_func(1, 2) << std::endl;
	delete b;
	return 0;
}
2.

#include <iostream>

struct Base {
	Base() { }
	~Base() { }
	char base_func(int a, int  {
		return (char)((a + *(a + );
	}
};

class Derived : public Base {
	int a, b;
public:
	Derived() {};
	Derived(int a, int  {
		this->a = a;
		this->b = b;
	}
	~Derived() {} 
	void put(int a, int  {
		this->a = a;
		this->b = b;
	}
	void get(int &a, int  {
		a = this->a;
		b = this->b;
	}
	int derived_func() {
		return base_func(a, ;
	}
};

int main() {
	Derived *d = new Derived(1, 2);
	std::cout << d->derived_func() << std::endl;
	delete d;
	return 0;
}
3.

#include <iostream>

template <typename T>
struct Base {
	Base() { }
	~Base() { }
	char base_func(T a, T  {
		return (char)((a + *(a + );
	}
};

template <typename T>
class Derived : public Base<T> {
	T a, b;
public:
	Derived() { };
	Derived(T a, T  {
		this->a = a;
		this->b = b;
	}
	~Derived() {} 
	void put(T a, T  {
		this->a = a;
		this->b = b;
	}
	void get(T &a, T  {
		a = this->a;
		b = this->b;
	}
	T derived_func() {
		return this->base_func(a, ;
	}
};

int main() {
	Derived<int> *d = new Derived<int>(1, 2);
	std::cout << d->derived_func() << std::endl;
	delete d;
	return 0;
}
4.

#include <iostream>

class Base {
protected:
	Base() { }
public:
	virtual ~Base() { }
	virtual char base_func(int a, int  {
		return (char)((a + *(a + );
	}
	virtual int derived_func() = 0;
};

class Derived : public Base {
	int a, b;
public:
	Derived() { };
	Derived(int a, int  {
		this->a = a;
		this->b = b;
	}
	~Derived() {} 
	void put(int a, int  {
		this->a = a;
		this->b = b;
	}
	void get(int &a, int  {
		a = this->a;
		b = this->b;
	}
	virtual int derived_func() {
		return base_func(a, ;
	}
};

int main() {
	Base *d = new Derived(1, 2);
	std::cout << d->derived_func() << std::endl;
	delete d;
	return 0;
}

 

 

P. S. Не по программированию, а по C++ T_T. Учись хоть тему озаглавливать правильно.

Изменено пользователем vit9696
  • Улыбнуло 1
  • Согласен 1
Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Похожий контент

    • KL FC Bot
      Автор KL FC Bot
      Сейчас принято считать, что зумеры — несерьезные сотрудники: не хотят трудиться, ленятся, часто меняют одну работу на другую. А вот статистика говорит об обратном. Почти половина представителей поколения Z переключаются между фуллтаймом, фрилансом и прочими подработками. Злоумышленники это прознали — молодые люди с несколькими работами стали для них удобной мишенью.
      Наши эксперты провели исследование и выяснили, какие неочевидные угрозы несет этот тренд. В этой статье разбираемся, как зумерам работать в нескольких местах без риска для собственной кибербезопасности.
      Больше приложений – больше проблем
      Основная проблема связана с корпоративными приложениями и доступами: звонок в Zoom на основной работе, мессенджер Slack — для другой, а задачки везде ставят в Notion. А между прочим, все эти приложения расширяют возможную поверхность атаки злоумышленников. Негодяи постоянно рассылают фишинговые письма, правдоподобно переписываются от лица работодателей и продвигают вредоносы под видом легитимного ПО для работы. Ставить фейковые поручения якобы от лица босса они тоже могут.
      В период с последней половины 2024 до первой половины 2025 эксперты «Лаборатории Касперского» зафиксировали 6 млн атак с поддельными платформами. Чаще всего атакующие имитировали приложения из золотой троицы каждого корпоративного работника: Zoom, Microsoft Excel и Outlook.
      Выглядеть это может так: злоумышленник отправляет письмо якобы от лица Zoom с просьбой обновить приложение. В письме — ссылка, которая ведет на фишинговый сайт, имитирующий оригинальную страницу Zoom и сразу же загружает на устройство фейковое приложение. Оно, в свою очередь, может красть данные контактов жертвы или вовсе получить доступ к рабочему окружению — возможных сценариев много.
      Фишинговый сайт предлагает как можно скорее установить «новую версию Zoom»
       
      View the full article
    • KL FC Bot
      Автор KL FC Bot
      При знакомстве с рейтингом CVSS (Common Vulnerability Scoring System) многим кажется, что он прекрасно подходит для сортировки уязвимостей и их приоритизации: если больше цифра рейтинга, значит уязвимость важнее. На практике этот подход не срабатывает. Уязвимостей с высоким рейтингом каждый год становится все больше, закрывать их все команды ИБ не успевают, при этом львиная доля этих дефектов никогда не эксплуатируется в реальных атаках. В то же время злоумышленники то и дело используют менее броские уязвимости с невысоким рейтингом. Есть и другие подводные камни — от чисто технических (конфликтующие оценки CVSS) до концептуальных (отсутствие бизнес-контекста).
      Считать это недостатками самого рейтинга CVSS нельзя, нужно просто применять этот инструмент правильно: в рамках более сложного и комплексного процесса управления уязвимостями.
      Разночтения CVSS
      Иногда одна и та же уязвимость получает разную оценку критичности в доступных источниках: у исследователя ИБ, который ее нашел; у производителя уязвимого ПО; в национальном реестре уязвимостей. Кроме банальных ошибок у этих разночтений может быть и более серьезная причина — разные эксперты могут расходиться в оценках контекста эксплуатации: например, о том, с какими привилегиями выполняется уязвимое приложение, доступно ли оно из Интернета, и так далее. Производитель может ориентироваться здесь на свои рекомендации лучших практик, а исследователь ИБ — на то, как приложения настроены в реальных организациях. Один исследователь может оценить сложность эксплуатации как высокую, а другой — как низкую. Все это далеко не редкость. В исследовании VulnCheck, проведенном в 2023 году, подсчитали, что 20% уязвимостей из NVD содержат два рейтинга CVSS3 из разных источников и 56% этих парных оценок конфликтуют между собой.
       
      View the full article
    • Вячеслав Л.
      Автор Вячеслав Л.
      Разве может антивирус так быстро проводить полную проверку всего устройства за 11 секунд! Ну как-то не правдоподобно.
      Устройство Redmi Note 9 Pro.

    • Вадим666
      Автор Вадим666
      PUA:Win32/Vigua.A
      PUA:Win32/Packunwan
      PUATorrent:Win32/uTorrent
      PUA:Win32/Softcnapp
       
      Защитник MS обнаружил следующие вирусы (описанные выше) после чего KSC перестал видеть зараженный пк и пк на него зайти не может пароль и логит верные. Просьба помочь в устранении следов заражения и возобновлении коннекта  KES и KSC
      Также в хосте появилась надпись #This file has been replaced with its default version by Kaspersky Lab because of possible infection
       
    • imperiose
      Автор imperiose
      Добрый день. В политике на KSC настроены правила на сетевом экране, самым последним размещается блокировка трафика, выше есть правила на доступ вх/исх трафик и в локальных адресах прописаны пулы адресов локальных сегментов.
      При включении пк, клиент не успевает получить адрес по dhcp, т.к сетевой экран блокирует все подключения.
      Подскажите, как избежать этого или какое правило нужно прописывать, что бы не блокировался весь трафик внутри сети еще до момента получения ip.

×
×
  • Создать...