一:命名空间概念简介
命名空间就是为了防止名字冲突而引入 的一种机制。系统中可以定义多个命名空间,每个命名空间都有自己的名字,不可以同名;
大家就可以把这个命名空间看成一个作用域,我们在这个命名空间里定义函数,跟你另外一个命名空间里定义的函数,即使同名,也互不影响。
(1)命名空间的定义:
namespace 命名空间名
{
…
}
(2)命名空间的定义可以不连续,甚至可以写在多个文件中。如果 你以往没有定义这个命名空间,那么"namespace命名空间名“这种写法就相当于定义了一个命名空间,如果以往你已经定义了这个命名空间,那么”namespace命名空间名“这种写法就相当于打开已经存在 的
(3)外界如何访问这个某个命名空间函数呢?
格式:命名空间名::实体名 -----其中这::叫”作用域运算符“
zhangsan::radius();
raduis2();
二:基本输入输出cin、cout精解
C++中我们不用printf,而是用C++提供的标准库。
iostream库(输入输出流)什么叫流?流就是一个字符序列。
std::cout<<“很高兴大家和老师一起学习C++\n”
(1)std::命名空间,标准库命名空间。大家要记这个名字
(2)cout,发音 cout(console output),是个对象
C语言中叫结构,C++中我们叫类
C语言中我们定义一个结构变量,在C++中,我们不叫结构变量,我们叫对象。
(3)<<:”输出“运算符。直接扎到cout去了,就表示 将<<右边的值写到cout去了;
可以当成函数,有参数。第一个参数在左边,就是cout对象。
”很高兴大家和老师一起学习C++\n"当成<<的第二个参数,在<<打开边
(4)\n:换行符,跟C语言中一个意思
int x=3;
std::cout<<x<<endl;
std:🔚是个模板函数名,相当于函数指针,建议大家暂时理解成函数
能看到std::cout的地方,就能看到std::endl
std::endl一般都位于std::cout语句的末尾。
作用:
(1)输出换行符\n
(2)强制刷新输出缓冲区,缓冲区中所有数据都被系统清除了。
输出缓冲区:一段内存。cout输出的时候实际是往输出缓冲区输出内容,那么输出缓冲区什么时候把内容输出到屏幕去的呢?
a)缓冲区满了
b)程序执行到main的return语句
c)启用了这个std::endl了,能够强制刷新输出缓冲区(把缓冲区的内容往屏幕上写)
d)当系统不太繁忙的时候,系统也会查看缓冲区内容,发现新内容也会正常输出到屏幕
ostream &std::cout.operator<<() //定义,<<返回的是一个写入了给定值的cout对象
int i =3;
std::cout<<i–<<i++; //2,3,其他编译器中不一定是这个值
大家要避免在一个表达式中多次的(超过一次的)改变一个变量的值
i–;
std::cout<<i;
i–;
std::cout<<i;
std::cin基本输入;
cin这也是个对象,叫标准输入。scanf
std::cout<<”请输入两个数:“<<std::endl;
int value1=0,value2=0;
std::cin>>value1>>value2;
std::cout<<value1<<"和”<<value2<<“相加的结果为:”<<value1+value2<<std::endl;
(1)cin也是一个iostream相关对象。叫“标准输入”。大家就理解成键盘
(2)>>是一个“输入”运算符
(3)返回其左侧运算对象作为其计算结果
std::cin>>value1>>value2;相当于
(std::cin>>value1)>>value2;
<<实际上叫运算符重载。