see C++ for the first(初识C++)
来源:互联网 发布:java 线程池 状态 编辑:程序博客网 时间:2024/06/05 02:50
神秘莫测的C++
因为我们专业是网络工程所以从大一开始就与C++无缘,但是在大一第二学期的时候我们在学校里学了一学期的Java,虽然没有缘分学习C++但是总觉得这两者之间有这千丝万缕的关系(都是面向对象的语言)。听学长学姐说C++应该是最难的一门课了,作为C++初学者的我就只能尽力喽..以下是我个人对C和C++的一点认识,如果有偏差的地方希望大家多多理解啦...
@C++关键字
我们知道在C语言中它的关键字有32个之多,当时我就觉得怎仫会有这仫多的关键字呢?晕...今天就让我们来看看C++里面的关键字吧...
@C++的名字空间
名字空间解决全局命名冲突的问题
标准C++库里的所有组件都是在一个被称为std的名字空间里声明和定义的;在标准C++的平台上使用标准C++库时有两种方式:
1).只需要写一个using指示符就可以了,using namespace std;
2).std::成员的方式也可以, ::作用域解析符
自定义名字空间
1).名字空间相当于一个更加灵活的文件域(全局域),可以用花括号把文件的一部分括起来;
2).可以在C++的名字空间std中添加新的变量( 一般很少这样做);
3).支持在不同的空间节里写相同的名字空间;
好了说了这仫多如何使用名字空间呢?下面我们就一个C中老生长谈的代码"Hello world"来理解上述名字空间的使用:
#include<iostream>namespace B1{int a=10;}namespace B1{int b=20;}namespace B2{int a=100;}using namespace std;using namespace B1;using namespace B2;int main(){cout<<B1::b<<endl;cout<<B1::a<<endl;cout<<B2::a<<endl;std::cout<<"hello world"<<endl;cout<<"hello world"<<endl;system("pause");return 0;}
它的输出结果是什仫呢?当然20 10 100 hello world hello world 啦..
@C 和C++的输入输出对比
cout 标准输出流对象,<<输出操作符cin 标准输入流对象, >>输入操作符endl 换行操作符都属于C++标注库,在名字空间std里
@C++的函数重载
在同一作用域,一组函数的函数名相同,参数列表不同(个数不同/类型不同),返回值可同可不同
为什仫会有 extern C ?
在C++语言中支持重载,而C中不支持重载,所以C++和C的命名规则不同,当C和C++共同在同一个函数中时就要使用extern C, 说明extern C 其后使用的函数是使用C的命名规则
比如下列代码在C中是不允许的,而在C++中因为可以重载是允许使用的:
int Add(int x,int y){return x+y;}float Add(float x,float y){return x+y;}
好了今天的总结就到这里了,总结的不太全面希望读者理解啦...
1 0
- see C++ for the first(初识C++)
- first blog for C
- EF Code First学习笔记 初识Code First C
- For learning the C
- First day on the C blog
- first.c
- First Article,see see
- For the first time!
- The OCI Functions for C
- Archive for the ‘Efficient C/C++’ Category
- 初识C#
- 【C#】初识
- 初识 C#
- 【C#】初识
- C programe (The first day of the training of cognizant )
- What does the first letter "c" mean in "calloc"?
- The 2014 ACM-ICPC Asia Mudanjiang Regional First Round C
- configure: error: no acceptable C compiler found in $PATH See `config.log' for more details 问题解决
- 05PL_SQL过程之使用%type声明变量
- Linux命令详解
- 06PL_SQL过程之复杂数据类型Table
- 对c++友元函数和友元类的理解
- 07PL_SQL过程之复杂数据类型之Record
- see C++ for the first(初识C++)
- 逆波兰式的产生与计算
- [LeetCode]problem 29. Divide Two Integers
- Python List find方法报错 TypeError: 'str' does not support the buffer interface
- 08PL_SQL过程之执行select语句
- 09PL_SQL过程之执行insert语句
- 理解 Ubuntu 16.04 根目录下各个文件夹的功能(草稿)
- static静态变量的理解
- MYSQL-----索引