课程大纲
1,C++学习序言
2,面向对象与面向过程(OOP VS POP)
3,C++与C语言区别
4,面向对象之封装
5,面向对象之继承
6,构造函数2个问题
7,面向对象之多态
8,面向对象之重载
9,面向对象实现多线程自动锁
10,单实例设计模式与多线程安全
11,C++课后作业:实现String类
12,STL模板库概述
13,vector容器
14,list容器
15,deque容器
16,set/multiset关联容器
17,map/multimap关联容器
18,适配器:stack,queue,priority_queue
19,STL算法与各种容器比较
错误更正
视频1小时02分开始,在实现setName函数时,需要提前释放m_Name的内存。即正确版本为:
void setName(char *name)
{
if(m_name)
delete []m_name;
if(name==NULL)
{
m_name=new char[1];
*m_name='\0';
}
else
{
m_name=new char[strlen(name)+1];
strcpy_s(m_name,strlen(name)+1,name);
}
}
第10节 单实例设计模式与多线程安全
CLock *A::m_lock = new CLock();没有释放
修改:在类A中添加一个public静态方法:
static void destroyA() {
if(m_pA)
delete m_pA;
if(m_lock)
delete m_lock;
}
然后在main函数最后调用:
A::destroyA();
第14节PPT里:
int main(int argc, char *argv[])
{
list
for( char c = 'a'; c < 'z' ; ++c)//这里应该是for,而不是if
{
lst.push_back(c);
}
list
for (pos = lst.begin(); pos != lst.end(); ++pos)
{
cout << *pos << " ";
}
lst.sort(greater
//find()
cout << endl;
}
周哥简介
周哥:男,真名周扬荣,毕业于中科院软件所。曾就职于阿里巴巴,奇虎360安全公司,SUN中国工程研究院,北大计算机研究所等,创办了“麦洛科菲”高端IT安全培训 。