Вход на сайт
редактирование - merge()... в синглетоне
408 просмотров
Перейти к просмотру всей ветки
в ответ Posmotrim 22.11.12 12:27
а просто бы обеспечил к нему доступ из уже существуюещего синглтона
------
А каким образом при этом обеспечить ситуцию при которой обезьяка не сможет испортить исходный документ?
На текущий момент документ просто не имеет Саве()...
По тому подумываю сделать примерно так:
class Document
{
protected Document() {}
private Document(bool inst) {}
public void Load() {}
static Document instance;
public static Document Instance { if(instance == null) instance = Document(true); return instance; }
}
class Document_Editor : Document
{
public Document_Editor : base() {}
public void Save(...) {}
public void Merge(...) {}
}
Что гарантирует защиту он обезьянки, но вводит дополнительный класс...
Либо надо делать что-то совсем заморочное...
------
А каким образом при этом обеспечить ситуцию при которой обезьяка не сможет испортить исходный документ?
На текущий момент документ просто не имеет Саве()...
По тому подумываю сделать примерно так:
class Document
{
protected Document() {}
private Document(bool inst) {}
public void Load() {}
static Document instance;
public static Document Instance { if(instance == null) instance = Document(true); return instance; }
}
class Document_Editor : Document
{
public Document_Editor : base() {}
public void Save(...) {}
public void Merge(...) {}
}
Что гарантирует защиту он обезьянки, но вводит дополнительный класс...
Либо надо делать что-то совсем заморочное...