当前位置: 首页 > news >正文

网站内怎么做搜索中国交通建设集团有限公司招聘

网站内怎么做搜索,中国交通建设集团有限公司招聘,网站建设与制作的流程,微网站和微信公共平台的区别文章目录 #x1f4dd;C简述C融合了3种不同的编程方式#xff1a;C和C语言关系是啥呢#xff1f;C标准 #x1f320;C应用#x1f320;C语言优点第一个C程序 #x1f320;命名空间#x1f320;命名空间的使用命名空间的定义 #x1f320;怎么使用命名空间中的内容呢C简述C融合了3种不同的编程方式C和C语言关系是啥呢C标准 C应用C语言优点第一个C程序 命名空间命名空间的使用命名空间的定义 怎么使用命名空间中的内容呢1. 直接使用完全限定名2. 使用using声明3. 使用using指令4. 嵌套命名空间使用注意事项命名空间的作用域 C简述 与C语言一样C也是在贝尔实验室诞生的Bjarne Stroustrup于1979年首次推出C是一种高级编程语言它是在C语言的基础上发展而来融合了面向对象的思想。它的特点是高效、低级和面向对象。 在C的发展历程中,最为重要的里程碑是C11标准的发布。C11版本增加了许多现代化的特性,例如类型推断、lambdas表达式、移动语义、多线程支持等,大大提高了C的编程效率和效果。 C被广泛应用于游戏开发、图形图像处理、嵌入式系统等领域。例如腾讯公司就广泛使用C来开发游戏引擎、QQ客户端等产品。C也是Linux内核和Windows系统的主要实现语言。 在编程界,C已经有40多年的历史,尽管时代不断变迁,但C依然是系统级和高性能领域的首选语言之一。它在各大编程语言排行榜上长期位居前茅,被众多科技巨头广泛应用。 C融合了3种不同的编程方式 C语言代表的过程性语言C在C语言基础上添加的类代表的面向对象语言。C模板支持的泛型编程。 C和C语言关系是啥呢 C语言是在C语言基础上添加了面向对象模板等现代程序设计语言的特性而发展起来的。两者无论是从语法规则上还是从运算符的数量和使用上都非常相似所以我们常常将这两门语言统称为“C/C”。 注意C语言和C并不是对立的竞争关系 C是C语言的加强是一种更好的C语言。 C是以C语言为基础的并且完全兼容C语言的特性。 C标准 这里是关于C程序可移植性的标准: 一、是否需要修改代码 如果一个C程序满足以下条件,则在重新编译后可以在新平台直接运行,无需修改源代码: 程序只调用标准C语言元素和标准库功能,不依赖任何特定平台的库或API。 程序不直接访问硬件,不依赖特定的指令集或CPU架构。 程序遵循当前ISO标准的C语言规范和标准库定义。 二、实现可移植性的两个关键点 硬件依赖性:如果程序直接访问硬件或依赖特定的指令集,则不具有良好的移植性。 语言实现的一致性:不同平台下编译器对C标准的实现应保持一致,以确保可移植性。 三、C标准的制定与发展 ANSI和ISO联合委员会从1990年开始制定统一的C标准。 最早的标准ISO/IEC 14882:1998为C奠定了基础。 后续标准不断修订和增强语言功能,但保持向下兼容。 标准库提供跨平台的接口,有助于提高程序的可移植性。 如果遵循标准,理论上程序可以在任何支持该标准的平台上通过重新编译直接运行。 以上就是关于C程序可移植性的一些基本标准和原则。如果满足这些条件,则可以实现跨平台良好的可移植性。 如果你想了解C标准有关版本可以看看以下: C98标准:发布于1998年,这是C语言的第一个正式标准版本。 C03标准:发布于2003年,主要是对C98标准的一些细微修改和补充。 C11标准:发布于2011年,这是一个重要的标准版本,增加了许多新的语言特性,如auto类型推导、lambda表达式、智能指针等。 C14标准:发布于2014年,基于C11标准进行了一些增强,如常量表达式、二进制字面量等。 C17标准:发布于2017年,主要新增了模块化支持、 paralle programming支持等新特性。 C20标准:发布于2020年,主要新增了范围for循环、概括模板、可变参数模板等功能。 … C应用 腾讯超级喜欢C开发? 作为互联网巨头之一的腾讯,一向都是众多游戏公司和科技企业的风向标 腾讯的历史原因 1998年,腾讯成立之初主要开发BBS论坛系统,当时常用的开发语言有PHP、ASP等脚本语言以及C/C两种编程语言。由于需要开发游戏等产品,出于性能考虑,腾讯最初选择了C/C来开发。 随着业务的扩展,腾讯游戏业务迅速发展,需要支持3D图形等游戏引擎,这就决定了必须选择C/C这种低级语言来开发。从此,C/C成为腾讯主打的技术方向。 腾讯发展的必然选择 经过20多年的发展,腾讯游戏和IT技术团队已经有数以万计的C/C开发人员,在游戏引擎和系统开发等领域有着非常深厚的技术积累。 目前腾讯的QQ客户端、微信公众号平台等核心产品都是基于C/C技术研发的。从游戏引擎、多媒体处理到操作系统开发,C/C作为系统级语言的优势很明显。因此,C/C成为腾讯不二选择。 C语言优点 C有8大特性,也就是它的8大优点: ⽂件使⽤⽅式含义跨平台/可移植性跨平台是C语言的核心优势,在设计之初C就很注重可移植性和跨平台性,因为C的运行不依赖任何虚拟机,编译生成的可执行文件可以直接在任何支持该平台的操作系统上运行,省去了大量的代码重复编写时间。安全性C提供了面向对象、模板和异常等机制,可以有效避免资源泄漏和错误的访问,使程序更安全可靠。面向对象C是完全的面向对象语言,非常适合大型软件的设计和开发。简单性C比C语言增加了更多面向对象的特性,如类、继承、重载等,在保留C语言简单易用的同时提高了程序的可维护性。高性能C的性能一直处于领先地位,尤其是在游戏、图形和嵌入式系统等领域。分布式C支持网络编程和远程调用,可以开发分布式系统。多线程C11标准增加了多线程支持,可以方便高效地开发多线程程序。健壮性C提供智能指针、异常处理等机制,减少内存泄漏和崩溃的可能性,使程序更健壮可靠。 第一个C程序 #include iostream using namespace std;//使用std命名空间 int main(int argc , char *argv[]) {int a;a10;cout a: aendl;cout Hello, World! endl;return 0; }输出 注意 1️⃣、在C语言中头文件使用扩展名.h作为一种简单的通过名称标识文件类型的方式。然而C的用法有所改变C头文件不使用扩展名。有些C语言的头文件被转换为C头文件这些文件被重新命名去掉了.h扩展名转为C风格头文件并在文件名前加上前缀c表示来自C语言。例如C版本的math.h变为cmathstdio.h变为cstdiostdlib.h变为cstdlib。 2️⃣、命名空间是指标识符的各种可见范围。使用关键字namespace来定义命名空间。命名空间是C的一种机制用于将具有逻辑关联的大量程序实体组合在一起这些实体共享相同的标识符。std是命名空间名字空间的名称命名空间的主要作用是解决日益严重的名称冲突问题。随着可重用代码的增加不同代码库中同名标识符之间的冲突会显著增加。解决方法是将不同的代码库放置在不同的命名空间中。 思考如果在项目中需要定义两个名为func的函数并且这两个函数都可以被其他文件访问应该怎么办 答如果在同一个项目中需要定义两个同名函数func,而这两个函数都需要被其他文件访问,可以采取以下方法: 使用命名空间 可以把两个func函数放入不同的命名空间中,比如: namespace space1 {void func() {// func定义1} }namespace space2 {void func() {// func定义2 } }然后其他文件使用时加上命名空间前缀区分,如space1::func()和space2::func()。 使用函数重载 可以给两个func函数添加不同的参数列表进行函数重载: void func() {// func定义1 }void func(int x) {// func定义2 }将函数定义放在不同的头文件中 比如func1.h和func2.h,然后分别#include相应的头文件。 使用类 可以将两个func函数定义在不同的类中: class A { public:void func() {/*func1定义*/} };class B { public:void func() {/*func2定义*/} };总之,通过命名空间,函数重载,不同头文件以及类等机制可以很好地区分开两个同名函数。 3️⃣、cout是C中的标准输出流endl用于输出换行并刷新缓冲区。 命名空间 C命名空间的基本概念: 在大型项目开发中,会涉及大量名称(如常量、变量、函数、类等),名称管理是程序设计的基本活动之一。C通过命名空间的机制,可以控制名称的产生和访问范围。 C中所有名称,如符号常量、变量、宏、函数、结构、枚举、类以及对象等都是可以定义在命名空间中的。 std命名空间是C标准命名空间。C标准库中的所有标识符如iostream类和vector类都是定义在这个std命名空间中的。如果需要使用这些标准库中的功能,需要添加using声明或使用std前缀来限定名称,比如使用std::cout输出。 命名空间的使用 命名空间的定义 C中的命名空间是一种封装标识符如变量名、函数名、类名等的方式用于防止命名冲突。命名空间允许组织代码以避免可能出现的标识符冲突尤其是在大型项目或者在使用多个库时。它可以被视为一种定义标识符的作用域这些标识符在该命名空间内是可见的而在命名空间外则不是。 定义命名空间的基本语法如下 namespace 名称 {// 定义变量、函数、类等 }这里名称是你给命名空间指定的名字可以根据需要在里面定义变量、函数、类等。 例如定义一个名为myNamespace的命名空间并在其中定义一个函数和一个变量 namespace myNamespace {int myVariable 0;void myFunction() {// 函数实现} }使用命名空间内的成员时需要使用命名空间的名称和作用域解析运算符::来指定如myNamespace::myVariable或myNamespace::myFunction()。 命名空间可以嵌套定义即一个命名空间内可以定义另一个命名空间。此外C还支持匿名命名空间和内联命名空间的概念。匿名命名空间是在文件内部提供了一个独一无二的命名空间而内联命名空间则允许在外层命名空间直接访问内联命名空间中的成员无需通过作用域解析运算符。 ok来举个例子 #include iostream// 外层命名空间 namespace outerNamespace {int outerVar 10;// 嵌套命名空间namespace nestedNamespace {void nestedFunction() {std::cout Inside nestedFunction std::endl;}}// 内联命名空间inline namespace inlineNamespace {void inlineFunction() {std::cout Inside inlineFunction std::endl;}} }// 匿名命名空间 namespace {void anonymousFunction() {std::cout Inside anonymousFunction std::endl;} }int main() {// 访问外层命名空间变量std::cout outerVar: outerNamespace::outerVar std::endl;// 访问嵌套命名空间的函数outerNamespace::nestedNamespace::nestedFunction();// 由于inlineFunction在内联命名空间中可以直接通过外层命名空间访问outerNamespace::inlineFunction();// 直接访问匿名命名空间中的函数anonymousFunction();return 0; }每个对应输出 解析在这个例子中我们定义了一个外层命名空间outerNamespace它包含一个变量outerVar、一个嵌套命名空间nestedNamespace和一个内联命名空间inlineNamespace。nestedNamespace内定义了一个函数nestedFunction()而inlineNamespace内定义了一个函数inlineFunction()。因为inlineFunction()在内联命名空间中它可以被当作是直接在outerNamespace中定义的所以我们可以不通过内联命名空间的名称直接访问它。 此外我们还定义了一个匿名命名空间并在其中定义了函数anonymousFunction()。由于匿名命名空间的特性该函数只在定义它的文件内部可见从而提供了一种限制访问范围的方法。 注意 命名空间的名字可以重复这种重复并非两个不同的命名空间而是在编译过程中将相同名字的命名空间合并事实上还是一个命名空间命名空间不能在类和函数中定义 C的using指令或using声明可以用来简化命名空间成员的访问但过度使用可能会引起名称冲突的问题。 怎么使用命名空间中的内容呢 在C中使用命名空间中的内容主要有以下几种方式 1. 直接使用完全限定名 这是最直接的方式通过命名空间的名称和作用域解析运算符::来访问命名空间中的变量、函数或类型。例如 #include iostream namespace MyNamespace {void myFunction() {// 函数实现std::coutvoid myFunction()std::endl;}int myVariable 42; }使用完全限定名来访问 int main() {MyNamespace::myFunction(); // 调用函数int value MyNamespace::myVariable; // 访问变量std::coutvaluestd::endl;return 0; }输出 2. 使用using声明 你可以使用using声明来引入命名空间中特定的名称从而在当前作用域中直接使用这个名称而不需要每次都提供完整的命名空间前缀。例如 using MyNamespace::myFunction; using MyNamespace::myVariable;int main() {myFunction(); // 现在可以直接调用函数无需命名空间前缀int value myVariable; // 直接访问变量std::coutvaluestd::endl;return 0; }3. 使用using指令 使用using指令可以将命名空间中的所有名称引入当前作用域这样你就可以直接使用这些名称而不需要命名空间前缀。但这种方法可能会导致名称冲突特别是当引入多个命名空间中有相同名称的成员时。例如 using namespace MyNamespace;int main() {myFunction(); // 直接调用无需前缀int value myVariable; // 直接访问std::coutvaluestd::endl;return 0; }4. 嵌套命名空间 考虑有如下嵌套命名空间Outer::Inner并在内部定义了innerFunction namespace Outer {namespace Inner {void innerFunction() {// 函数实现std::coutvoid innerFunction()std::endl;}} }在C17及之后可以使用嵌套命名空间的简化写法 namespace Outer::Inner {void innerFunction() {// 实现std::coutvoid innerFunction()std::endl;} }使用完全限定名访问 int main() {Outer::Inner::innerFunction(); // 直接调用嵌套命名空间中的函数return 0; }输出 void innerFunction()或者使用using指令或声明简化访问 using namespace Outer::Inner; // 引入嵌套命名空间 // 或者 using Outer::Inner::innerFunction;int main() {innerFunction(); // 直接调用return 0; }输出 void innerFunction()使用注意事项 精确性直接使用完全限定名是最精确的方式可以避免任何潜在的命名冲突。简洁性与清晰性using声明和using指令可以使代码更简洁但过度使用可能会降低代码的清晰性和可维护性特别是在大型项目或者使用多个库时。作用域考虑使用using声明和using指令时应该考虑到它们的作用域。通常将它们放在函数内部或者局部作用域内可以减少潜在的命名冲突和其他问题。 命名空间的作用域 使用using namespace命名空间名称引入可以将命名空间中的所有成员引入到当前作用域中可以直接使用命名空间中的成员而不需要使用命名空间前缀。 #include iostream using namespace std; namespace A {int a 10;int b 66;int c 108; } namespace B {int a 10;int b 6;int c 109; } int a 36;using namespace A; using namespace B;int main() {//std::coutastd::endl;//这种写法是错误的因为全局中定义了a命名空间tmh中的a也展开在了全局域std::cout::astd::endl;//正确访问全局的a::左边空白表示全局域std::coutA::astd::endl;//正确访问A中的a//std::coutbstd::endl;//错误应严格写出哪个命名空间的bint c 999;c;//当前局部的c设置成999局部变量优先没有特别的指示优先使用局部域中的元素std::coutcstd::endl;return 0; }输出 感谢你的收看如果文章有错误可以指出我不胜感激让我们一起学习交流如果文章可以给你一个小小帮助可以给博主点一个小小的赞
http://www.zqtcl.cn/news/737559/

相关文章:

  • 营销型网站搭建公司有没有专做推广小说的网站
  • 汕头网站搭建wordpress文章列表摘要
  • 网站开发体会800字网站开发新功能
  • 网站域名查询ip杭州pc网站开发公司有哪些
  • 青岛公司网站设计网站后台编辑器内容不显示
  • vc6.0做网站wordpress调用会员等级
  • 哪个网站有做商标网站的类型是什么意思
  • 网站 主机网站内容段落之间有空格对seo有影响吗
  • 网站的宣传推广学网站开发哪个好
  • 免费背景图片素材网站北京企业建站程序
  • 营销网站建设方案wordpress门户
  • 世界网站排名查询效果好企业营销型网站建设公司
  • 网站用户体验解决方案个人网页设计作品赏析
  • 常州网站建设方案外包网站开发用到的技术
  • 防伪网站模板如何找百度做网站
  • 网站建设与维护成绩查询云南app开发系统
  • 自己做网站的难度建设专门网站 强化信息宣传
  • 公职单位建设网站的目的如何查看小程序的开发公司
  • 网页模板网站推荐青岛 php 网站建设
  • joomla 网站建设3d网站建设
  • 网站开发与维护专业前景网站被禁止访问怎么打开
  • 山东 网站建设青海公路建设市场信用信息服务网站
  • 济南正规做网站公司wordpress一键还原
  • 免费的购物网站源码百度网站优化
  • 企业需要做网站吗深圳装修公司前十强
  • 合肥做网站推广哪家好软文写作的十大技巧
  • 哪里做网站的wordpress歌词插件
  • 网站改版做301重定向百度站长平台查询
  • 织梦网站后台网址妙影免费模板下载
  • 甘肃网站建设开发怎么利用花生壳做自己的网站