2013-12-08 90 views
3

我想將單例類成員與現有的值聯繫起來。這與單身想法有衝突嗎?
例如:單身類可以獲取參數嗎?

class Point 
    { 
private int x; 
private int y; 
    }  

我想單個實例進行相關Point實例

class PointSingleton //This is the singleton class 
{ 
    private static PointSingleton item; 
    private Point point; //How to relate this member to an existing point values? 

    static PointSingleton() //Static Ctor to initialize the item instance 
    { 
     item = new p(); 
    } 
    private p()//private Ctor 
    { 

    } 

    public static PointSingleton GetPointSingleton()// method that enable access to item 
    { 
     return item; 
    } 
} 

從另一個類訪問可能的值應該是這樣的:

 PointSingleton instance = PointSingleton.GetPointSingleton(); 

但我可以在哪裏插入想要的值?
謝謝。

+1

在靜態構造函數。如果您沒有這方面的信息,或者稍後需要更改,您可能不應該首先使用單身人士。 – cHao

+0

也許你可以將方法添加到PointSingleton中,稱爲「更改座標」,它會在一段時間後改變座標? –

+1

你的意思是我可能會這樣調用它:PointSingleton instance = PointSinleton.GetPointSingleton();然後:instance.ChangeCoordinates(Point point); ? – user3041065

回答

0

如果你要編輯的Poi​​nt.x和Point.y,只需一個公共的改變方法添加到PointSingleton

class PointSingleton 
{ 
    ... 
    public static UpdatePointValues(int x, int y) 
    { 
     point.x = x; 
     point.y = y; 
    } 
} 

這將改變基本觀點的價值爲PointSingleTon類的所有用戶。你可能也想要一個公共的get屬性來從PointSingleton獲得Point。

相關問題