Convert shared pointer to raw pointer

This commit is contained in:
Tinu Johnson
2026-04-10 15:00:31 +05:30
committed by Joel Thomas
parent 7e0becaa3e
commit 75b69f8c11
27 changed files with 145 additions and 133 deletions
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class AdminMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController* m_zenvyController;
public:
AdminMenu() :m_zenvyController(std::make_shared<ZenvyController>()) {};
AdminMenu() :m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class EmployeeMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController m_zenvyController;
public:
EmployeeMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
EmployeeMenu() : m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class FinanceExecutiveMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController* m_zenvyController;
public:
FinanceExecutiveMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
FinanceExecutiveMenu() : m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class HRManagerMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController* m_zenvyController;
public:
HRManagerMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
HRManagerMenu() : m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class ITExecutiveMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController* m_zenvyController;
public:
ITExecutiveMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
ITExecutiveMenu() : m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class TalentExecutiveMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController* m_zenvyController;
public:
TalentExecutiveMenu() : m_zenvyController(std::make_shared < ZenvyController>()) {};
TalentExecutiveMenu() : m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class TeamExecutiveMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController* m_zenvyController;
public:
TeamExecutiveMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
TeamExecutiveMenu() : m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -6,15 +6,14 @@
*/
#pragma once
#include<memory>
#include"ZenvyController.h"
class TeamLeadMenu
{
private:
std::shared_ptr<ZenvyController> m_zenvyController;
ZenvyController* m_zenvyController;
public:
TeamLeadMenu() : m_zenvyController(std::make_shared<ZenvyController>()) {};
TeamLeadMenu() : m_zenvyController(new ZenvyController()) {};
void run();
bool handleOperation(int);
};
@@ -7,7 +7,6 @@
#include <iostream>
#include <utility>
#include <memory>
#include <stdexcept>
#include "UserInterface.h"
#include "AdminMenu.h"
@@ -132,7 +131,6 @@ void UserInterface::login()
}
}
util::clear();
// Route to appropriate menu
switch (employeeType)
{
case Enums::EmployeeType::ADMIN:
@@ -191,4 +189,17 @@ void UserInterface::login()
break;
}
m_controller->logout();
}
UserInterface::~UserInterface()
{
delete m_controller;
delete m_employeeMenu;
delete m_adminMenu;
delete m_financeExecutiveMenu;
delete m_hrManagerMenu;
delete m_itExecutiveMenu;
delete m_talentExecutiveMenu;
delete m_teamExecutiveMenu;
delete m_teamLeadMenu;
}
@@ -6,7 +6,6 @@
*/
#pragma once
#include <memory>
#include <utility>
#include "AdminMenu.h"
#include "EmployeeMenu.h"
@@ -21,27 +20,28 @@
class UserInterface
{
private:
std::shared_ptr<ZenvyController> m_controller;
std::shared_ptr<EmployeeMenu> m_employeeMenu;
std::shared_ptr<AdminMenu> m_adminMenu;
std::shared_ptr<FinanceExecutiveMenu> m_financeExecutiveMenu;
std::shared_ptr<HRManagerMenu> m_hrManagerMenu;
std::shared_ptr<ITExecutiveMenu> m_itExecutiveMenu;
std::shared_ptr<TalentExecutiveMenu> m_talentExecutiveMenu;
std::shared_ptr<TeamExecutiveMenu> m_teamExecutiveMenu;
std::shared_ptr<TeamLeadMenu> m_teamLeadMenu;
ZenvyController* m_controller;
EmployeeMenu* m_employeeMenu;
AdminMenu* m_adminMenu;
FinanceExecutiveMenu* m_financeExecutiveMenu;
HRManagerMenu* m_hrManagerMenu;
ITExecutiveMenu* m_itExecutiveMenu;
TalentExecutiveMenu* m_talentExecutiveMenu;
TeamExecutiveMenu* m_teamExecutiveMenu;
TeamLeadMenu* m_teamLeadMenu;
public:
UserInterface() : m_controller(std::make_shared<ZenvyController>()),
m_employeeMenu(std::make_shared<EmployeeMenu>()),
m_adminMenu(std::make_shared<AdminMenu>()),
m_financeExecutiveMenu(std::make_shared<FinanceExecutiveMenu>()),
m_hrManagerMenu(std::make_shared<HRManagerMenu>()),
m_itExecutiveMenu(std::make_shared<ITExecutiveMenu>()),
m_talentExecutiveMenu(std::make_shared<TalentExecutiveMenu>()),
m_teamExecutiveMenu(std::make_shared<TeamExecutiveMenu>()),
m_teamLeadMenu(std::make_shared<TeamLeadMenu>()) {};
void run();
bool handleOperation(int choice);
void login();
};
UserInterface() :
m_controller(new ZenvyController()),
m_employeeMenu(new EmployeeMenu()),
m_adminMenu(new AdminMenu()),
m_financeExecutiveMenu(new FinanceExecutiveMenu()),
m_hrManagerMenu(new HRManagerMenu()),
m_itExecutiveMenu(new ITExecutiveMenu()),
m_talentExecutiveMenu(new TalentExecutiveMenu()),
m_teamExecutiveMenu(new TeamExecutiveMenu()),
m_teamLeadMenu(new TeamLeadMenu()) {};
void run();
bool handleOperation(int choice);
void login();
~UserInterface();
};