【C++】初步认识C++
- 1. 初识C++
- 1.1 C++概念相关
- 1.2 C++发展史及其重要性
- 1.2.1 发展史
- 1.2.2 重要性
- 2. C++关键字
- 3. 命名空间
- 4. 输入和输出
个人主页:C_GUIQU
归属专栏:【C++学习】
1. 初识C++
1.1 C++概念相关
C语言是结构化和模块化的语言,适合处理较小规模的程序。
【来源】1982年,Bjarne Stroustrup博士在C语言的基础上引入并扩充了面向对象的概念,发明了一种新的程序语言。为了表达该语言与C语言的渊源关系,命名为C++。
【概念】C++是基于C语言而产生的,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行面向对象的程序设计。
【性质】
- 面向对象
- 三大特性:封装,继承,多态。
【C语言和C++的关系】
1.2 C++发展史及其重要性
1.2.1 发展史
【C++的历史版本】
1.2.2 重要性
重要性不言而喻
【4个层次】
- 第一个层次,C++基础 (平平常常)
- 第二个层次,正确高效的使用C++ (驾轻就熟)
- 第三个层次,深入解读C++ (出神入化)
- 第四个层次,研究C++ (返璞归真)
【建议】中后期画思维导图总结。
【摘录】 最后,我说一说我的一些感受:
- 这些年来的对于外企和国内感受—— 国外牛B的IT公司的工程能力并不见得比国内的要强多少,但是国外那些NB的IT公司的架构和设计能力远远超过国内的公司,最可怕的是,那些有超强架构和设计能力的“老程序员们”还战斗在一线,这些战斗在一线的老鸟的能力绝对超过100个普能的新手。
- 对年轻程序员的感受——国内新一代的程序员们太浮燥了。老实说,对于大多数人来说,如果你没有编程到30岁,你还不能成为一个“合格”的程序员。所以,并不是编程编到30岁就玩完了,而是编程编到30岁才刚刚入门。这些不合格的程序,整天BS这个不好,那个不好的,而且喜欢速成,好大喜功。
- 我是一个奔四的人了,编程就像登山一样,越往上爬人越少,所以,在我这个年纪还有想法,对编程还有热情的人不多了,基本上都是转Manager了。其实,什么职位,Title都是虚的,公司没了什么都没了,只有技术才是硬通货。而且,越是这个年纪还在玩编程玩技术的人,其实其经验和能力都是比较强的,都是中坚力量,如果还有其它这个年纪和我一样的人,求交往。
2. C++关键字
C语言32个关键字,C++总计63个关键字。
后期学习慢慢了解。
asm do if return try continue auto double inline short typedef for bool dynamic_cast int signed typeid public break else long sizeof typename throw case enum mutable static union wchar_t catch explicit namespace static_cast unsigned default char export new struct using friend class extern operator switch virtual register const false private template void true const_cast float protected this volatile while delete goto reinterpret_cast
3. 命名空间
【引言】
//C语言命名冲突报错 #include #include int rand = 10; int main() { int a = 1; printf("%d\n",rand); return 0; }C++中引入命名空间(namespace)用以解决这类问题。
【概念】
命名空间(namespace)是 C++ 提供的一种解决命名冲突问题的方法,可以将不同作用域的标识符(如变量、函数、类等)组织在一起。
【性质】
- 是用来组织代码并避免命名冲突的一种机制。
- 避免命名冲突:不同的命名空间中可以有相同名称的变量和函数,彼此不会产生冲突。
- 模块化组织:更好地组织和管理代码,提高可维护性。
- 作用域控制:控制变量和函数的可见范围,避免全局污染。
定义命名空间
namespace myNamespace { int a;//定义变量 void fun();//定义函数 }使用命名空间中的成员
作用域运算符 :: :在C++中用于访问命名空间的成员和限定类的成员函数的定义位置。
可以理解为访问操作符,用于访问变量和函数。
namespace myNamespace { int a; void fun(); myNamespace :: a = 1;//使用变量 myNamespace :: fun();//使用函数 }嵌套命名空间
namespace 1 { namespace 2//嵌套 { int a; void fun(); } } myNamespace::a = 1; myNamespace::fun();使用 using声明
#include namespace NamespaceA { int a = 5; } int main() { using NamespaceA::a; // 使用using声明 std::cout int a = 5; void func() { std::cout using namespace NamespaceA; // 使用using namespace指令 std::cout int a = 5; // 定义嵌套命名空间NamespaceB namespace NamespaceB { int b = 10; } } int main() { // 使用 using声明 using NamespaceA::a; std::cout std :: cout cout
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




