面向对象的三大特点:
封装:提高代码的维护性; 继承:提高代码的复用性; 多态:提高代码的扩展性
任务:
环境安装
xshell的使用
使windows下能够访问linux
sublime text 、notepad——windows下查看源码的工具
mind manager——思维导图工具
c++ prime plus
自学:git/svn git+GitHub
命名空间
c语言中的使用static来减少命名冲突
而在C++中,用的是命名空间:namespace
作用域限定符——————“ : : ”
使用方法:
1.命名空间可以嵌套定义
2.using namespace sp1可以导入命名空间,使得命名空间内的变量都作为全局变量
3.不同的文件可以有同名的命名空间:
【1.两个.h文件中namespace名字相同,命名空间中成员名称无重复,那么他们会合并为一个命名空间,编译通过
2.两个.h文件中namespace名字相同,命名空间中成员名称有重复,那么程序会在链接时报错
使用命名空间加作用域限定符访问成员时候,优先导入本文件内的命名空间
3.使用using导入命名空间时候,导入的是所有源文件的命名空间
4.命名空间一般放在.h文件内】
防止头文件重复包含:
1.#pragma once
2.#ifndef __XXXX_H_
#define __XXXX_H_
1.2.输入与输出
cout可以完全替代printf;而printf不能完全替代cout;
实际使用中应该灵活使用printf和cout
缓冲区
printf是行缓冲——【满一行才输出】
cout也是有缓冲区,也是行缓冲
endl:刷缓冲区:
cout <<"hello world"<<endl 也可以改写成: cout <<"hello world\n"
输入垃圾:可以用getchar()、cin.get()————————读走一个字符
cin.getline ——————获取一行
或者 getline();
重定向
cerr和clog默认是输出在屏幕上
将cerr【标准错误流】 和clog【标准日志流】重定向——————
【导出错误信息到一个文件;将文件内容作为标准输入;】
网络编程中有应用
文件标识符
cerr是没有缓冲区的:
clog是有缓冲区的