Skip to content

dz pull for color singleton - #2

Open
Latt3x wants to merge 1 commit into
NatalyaKovalova:pr10from
Latt3x:master
Open

dz pull for color singleton#2
Latt3x wants to merge 1 commit into
NatalyaKovalova:pr10from
Latt3x:master

Conversation

@Latt3x

@Latt3x Latt3x commented Jul 30, 2026

Copy link
Copy Markdown

dz pull for singleton
#include

#include

#include

class FavoriteColors {

private:

static FavoriteColors* instance;



std::vector<std::string> colors;



FavoriteColors() = default;

public:

FavoriteColors(const FavoriteColors&) = delete;

FavoriteColors& operator=(const FavoriteColors&) = delete;



static FavoriteColors* getInstance() {

    if (instance == nullptr) {

        instance = new FavoriteColors();

    }

    return instance;

}



void addColor(const std::string& color) {

    colors.push_back(color);

}

void displayColors() const {

    std::cout << "Favorite Colors: ";

    for (const auto& color : colors) {

        std::cout << color << " ";

    }

    std::cout << std::endl;

}

void clearColors() {

    colors.clear();

}

};

FavoriteColors* FavoriteColors::instance = nullptr;

int main() {

FavoriteColors* colors1 = FavoriteColors::getInstance();

colors1->addColor("Red");

colors1->addColor("Blue");



FavoriteColors* colors2 = FavoriteColors::getInstance();

colors2->addColor("Green");

colors2->displayColors();

return 0;

}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants