y***e 发帖数: 32 | 1 1.如何实现Singleton?其中如何考虑什么时候delete那个single pointer?
2.实现convert一个positive整数成一个有特殊格式(currents)的字符串。
例如:
1000 -> $1,000
999 -> $999
123456789 -> $123,456,789 |
w********s 发帖数: 1570 | 2 singleton为啥要ptr?
X getInstance()
{
static X x;
return x;
}
不就完了?
要ptr的话,用smart pointer吧
【在 y***e 的大作中提到】 : 1.如何实现Singleton?其中如何考虑什么时候delete那个single pointer? : 2.实现convert一个positive整数成一个有特殊格式(currents)的字符串。 : 例如: : 1000 -> $1,000 : 999 -> $999 : 123456789 -> $123,456,789
|
w********s 发帖数: 1570 | 3 #include
#include
template
class Singleton
{
public:
static T getInstance()
{
if (!_pObj)
{
boost::scoped_lock(_mutex);
if (!_pObj)
_pObj.reset(new T());
}
return *_pObj;
}
private:
boost::shared_ptr _ptr;
static boost::mutex _mutex;
}
【在 y***e 的大作中提到】 : 1.如何实现Singleton?其中如何考虑什么时候delete那个single pointer? : 2.实现convert一个positive整数成一个有特殊格式(currents)的字符串。 : 例如: : 1000 -> $1,000 : 999 -> $999 : 123456789 -> $123,456,789
|
f****h 发帖数: 13 | 4 你这songleton的instance不是single的呀
【在 w********s 的大作中提到】 : singleton为啥要ptr? : X getInstance() : { : static X x; : return x; : } : 不就完了? : 要ptr的话,用smart pointer吧
|
w********s 发帖数: 1570 | 5 为什么不是single?
【在 f****h 的大作中提到】 : 你这songleton的instance不是single的呀
|
y***e 发帖数: 32 | 6 1.如何实现Singleton?其中如何考虑什么时候delete那个single pointer?
2.实现convert一个positive整数成一个有特殊格式(currents)的字符串。
例如:
1000 -> $1,000
999 -> $999
123456789 -> $123,456,789 |
w********s 发帖数: 1570 | 7 singleton为啥要ptr?
X getInstance()
{
static X x;
return x;
}
不就完了?
要ptr的话,用smart pointer吧
【在 y***e 的大作中提到】 : 1.如何实现Singleton?其中如何考虑什么时候delete那个single pointer? : 2.实现convert一个positive整数成一个有特殊格式(currents)的字符串。 : 例如: : 1000 -> $1,000 : 999 -> $999 : 123456789 -> $123,456,789
|
w********s 发帖数: 1570 | 8 #include
#include
template
class Singleton
{
public:
static T getInstance()
{
if (!_pObj)
{
boost::scoped_lock(_mutex);
if (!_pObj)
_pObj.reset(new T());
}
return *_pObj;
}
private:
boost::shared_ptr _ptr;
static boost::mutex _mutex;
}
【在 y***e 的大作中提到】 : 1.如何实现Singleton?其中如何考虑什么时候delete那个single pointer? : 2.实现convert一个positive整数成一个有特殊格式(currents)的字符串。 : 例如: : 1000 -> $1,000 : 999 -> $999 : 123456789 -> $123,456,789
|
f****h 发帖数: 13 | 9 你这songleton的instance不是single的呀
【在 w********s 的大作中提到】 : singleton为啥要ptr? : X getInstance() : { : static X x; : return x; : } : 不就完了? : 要ptr的话,用smart pointer吧
|
w********s 发帖数: 1570 | 10 为什么不是single?
【在 f****h 的大作中提到】 : 你这songleton的instance不是single的呀
|
s*******m 发帖数: 228 | 11 那个singleton, 用java的话,就不用考虑删除了吧 |
j**********g 发帖数: 77 | |
s********t 发帖数: 11 | 13 1. C++的话注意用shared_ptr,做引用计数
2. 这个printf不就搞定了?
【在 y***e 的大作中提到】 : 1.如何实现Singleton?其中如何考虑什么时候delete那个single pointer? : 2.实现convert一个positive整数成一个有特殊格式(currents)的字符串。 : 例如: : 1000 -> $1,000 : 999 -> $999 : 123456789 -> $123,456,789
|