甘肃省天水网站建设-天水网络公司-优化-制作-设计推广-天水网站建设服务中心-网站开发-网站建设【企业网站制作|网页设计】- 高端网站建设 - 书生商友信息科技-

全国热线:400-111-6878

网站建设推广专家

甘肃省天水网站建设-天水网络公司-优化-制作-设计推广-天水网站建设服务中心

发表日期: 2022-05-29 14:40:12 浏览次数:110

甘肃省天水网站建设-天水网络公司-优化-制作-设计推广-天水网站建设服务中心

网站建设.png

天水,古称秦州、上邽,是甘肃省辖地级市,甘肃省人民政府批复确定的甘肃省域副中心城市。截至2019年末,辖2个区、5个县,总面积1.43万平方公里。 [1]  截至2021年,天水市常住人口为295.65万人, [47]  地区生产总值为750.33亿元。 [42] 
天水地处中国西部地区、甘肃省东南部、秦岭西段、渭水中游,是关中平原城市群次核心城市、丝绸之路经济带重要节点城市、全国老工业基地和重要的装备制造业基地之一。截至2019年,有省级工程技术研究中心16家,国家级企业重点实验室1家,省级企业重点实验室6家;有天水师范学院、甘肃林业职业技术学院、甘肃工业职业技术学院、甘肃机电职业技术学院等普通高校5所。 [1-2] 
天水历史文化悠久,是中华民族和华夏文明的重要发祥地、“三皇之首”伏羲氏的诞生地、伏羲文化的发祥地、国家历史文化名城,有8000多年的文明史、3000多年的文字记载史、2700多年的建城史,有“羲皇故里”之称。以伏羲文化、大地湾文化、秦早期文化、麦积山石窟文化和三国古战场文化为代表的“五大文化”,构成了天水丰富的历史文化资源。截至2020年10月,天水市有文物保护单位470处,其中国家级17处、省级54处。
天水古为“邽县”,邽县(读作:guī)原是邽戎地,公元前688年秦武公取其地,置邽县,后改为上邽县。公元前221,秦始皇置三十六郡时,上邽是陇西郡中一县。汉武帝时,置天水郡,上邽是其中一县,区划是今市区西南。
天水郡称呼始于汉武帝元鼎三年(前114年),源于“天河注水”的美丽传说。秦末汉初,长年征战加之干旱,上邽城民不聊生。一天夜里,忽然狂风呼啸,雷电交加,一道金光闪耀,地上现出红光。大地连续震动,在巨响声中裂开一条大缝。天上河水倾泻而下,注入裂开的缝中,形成一湖,名曰“天水湖”。此湖春不涸,夏不溢,四季滢然。人说这湖与天河相通,又叫它“天水井”。后来,这个传说被汉武帝听到,他便给上邽北城湖旁新设的郡,起名“天水郡”。从此,有了“天水”之名。 [4] 

建制沿革

天水在夏、商时期属雍州,周孝王十二年(公元前九世纪)赢非子在秦池(今张家川县城南一带)为王室养马有功被封于秦,号赢秦。秦即后世的秦亭,是天水市辖区见于史籍的最早地名。
秦武公十年(前688年),秦灭邽戎、冀戎,置邽(今城区)、冀(今甘谷县东)二县,这是中国历史上设置最早的两个县级建置。秦昭王二十八年(前279年),设陇西郡。郡县制在今辖区确立。  西汉武帝元鼎三年(前114年),从陇西、北地二郡析置天水郡。从此有“天水”的名称。 [38] 

一个中大型软件往往由多名程序员共同开发,会使用大量的变量和函数,不可避免地会出现变量或函数的命名冲突。当所有人的代码都测试通过,没有问题时,将它们结合到一起就有可能会出现命名冲突。

例如小李和小韩都参与了一个文件管理系统的开发,它们都定义了一个全局变量 fp,用来指明当前打开的文件,将他们的代码整合在一起编译时,很明显编译器会提示 fp 重复定义(Redefinition)错误。

为了解决合作开发时的命名冲突问题,C++ 引入了命名空间(Namespace)的概念。请看下面的例子:

namespace Li{  //小李的变量定义FILE* fp = NULL;}namespace Han{  //小韩的变量定义FILE* fp = NULL;}

小李与小韩各自定义了以自己姓氏为名的命名空间,此时再将他们的 fp 变量放在一起编译就不会有任何问题。

命名空间有时也被称为名字空间、名称空间。

namespace 是C++中的关键字,用来定义一个命名空间,语法格式为:

namespace name{
    //variables, functions, classes
}

name是命名空间的名字,它里面可以包含变量、函数、类、typedef、#define 等,最后由{ }包围。

使用变量、函数时要指明它们所在的命名空间。以上面的 fp 变量为例,可以这样来使用:

Li::fp = fopen("one.txt", "r");  //使用小李定义的变量 fpHan::fp = fopen("two.txt", "rb+");  //使用小韩定义的变量 fp

::是一个新符号,称为域解析操作符,在C++中用来指明要使用的命名空间。

除了直接使用域解析操作符,还可以采用 using 关键字声明,例如:

using Li::fp;fp = fopen("one.txt", "r");  //使用小李定义的变量 fpHan :: fp = fopen("two.txt", "rb+");  //使用小韩定义的变量 fp

在代码的开头用using声明了 Li::fp,它的意思是,using 声明以后的程序中如果出现了未指明命名空间的 fp,就使用 Li::fp;但是若要使用小韩定义的 fp,仍然需要 Han::fp。

using 声明不仅可以针对命名空间中的一个变量,也可以用于声明整个命名空间,例如:

using namespace Li;fp = fopen("one.txt", "r");  //使用小李定义的变量 fpHan::fp = fopen("two.txt", "rb+");  //使用小韩定义的变量 fp

如果命名空间 Li 中还定义了其他的变量,那么同样具有 fp 变量的效果。在 using 声明后,如果有未具体指定命名空间的变量产生了命名冲突,那么默认采用命名空间 Li 中的变量。

命名空间内部不仅可以声明或定义变量,对于其它能在命名空间以外声明或定义的名称,同样也都能在命名空间内部进行声明或定义,例如类、函数、typedef、#define 等都可以出现在命名空间中。

站在编译和链接的角度,代码中出现的变量名、函数名、类名等都是一种符号(Symbol)。有的符号可以指代一个内存位置,例如变量名、函数名;有的符号仅仅是一个新的名称,例如 typedef 定义的类型别名。

下面来看一个命名空间完整示例代码:

#include <stdio.h>//将类定义在命名空间中namespace Diy{class Student{public:char *name;int age;float score;public:void say(){printf("%s的年龄是 %d,成绩是 %f\n", name, age, score);}};}int main(){Diy::Student stu1;stu1.name = "小明";stu1.age = 15;stu1.score = 92.5f;stu1.say();return 0;}

运行结果:
小明的年龄是 15,成绩是 92.500000

C++ 命名空间的语法比较复杂,本节所讲到的只是冰山一角,主要是为下节《C++头文件和std命名空间》的讲解打基础。关于命名空间的更多内容我们将在后续章节中一一讲解。


甘肃省天水网站建设-天水网络公司-优化-制作-设计推广-天水网站建设服务中心

上一条:甘肃省兰州网站建设_网站制作_公司开发设计_一站式全包_10多年经验满意为止
下一条:甘肃省天水外贸网站建设-双语网站制作-企业中英文网站优化推广-多语言集团网站定制开发
网站制作
小程序制作
网站优化
网站开发
400电话办理
网络推广
网站建设
网店装修
微信公众号开发
网页设计
网络公司
域名企业邮箱
服务器空间
网站案例报价
百科问答
编辑排版美工
App软件开发
百度推广
代运营托管
logo设计
网络全网营销
网站备案
网站定制
小程序开发公司
首页
电话
立即预约