面试两次被鄙视了,发现自己基础实在太差,特别记录下来,引以为戒

 

(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)

字符串分割 组合