面试两次被鄙视了,发现自己基础实在太差,特别记录下来,引以为戒
(1)
写个单例模式
我是这么写的
class Singlen
{
private:
Singlen instance;
Singlen()
{
instance = new Singlen();
}
public:
Singlen Instance()
{
return instance;
}
};
实际上应该这么写
class singleton
{
private:
singleton(){}
static singleton* p;
public:
static singleton* instance();
void show()
{
cout << "hihi" << endl;
}
};
singleton* singleton::p = NULL;
singleton* singleton::instance()
{
if (p == NULL)
p = new singleton();
return p;
}
test
singleton* p1 = singleton :: instance();
p1->show();
(2)
class parent
{
public:
parent()
{
init();
}
void init()
{
cout << "parent" << endl;
}
};
class child :public parent
{
public:
child()
{
}
void init()
{
cout << "child " << endl;
}
};
int _tmain(int argc, _TCHAR* argv[])
{
child ch;
return 0;
}
我写的
parent
child
然而结果是
parent
(3)
一行命令实现代码行数统计
然而我并不会 ,实际应该这样
find . -name "*.cpp"|xargs wc -l|grep "total"|awk '{print $1}'
(4)
查询硬盘空间
df -h
(5)
map
STL 中的 map 内部是平衡二叉树,有序
几乎没有了解
(6)
字符串分割 组合