我的c++笔记

这篇博客介绍了如何在Visual Studio 2022环境下编写并运行第一个C++程序,包括使用命名空间、iostream库进行输入输出操作,以及计算圆的周长和面积。同时,讲解了C++中的分号作为语句结束符的重要性,以及C++头文件和命名空间的历史演变,特别是std命名空间的引入和旧版头文件的调整。还提到了域解析操作符'::'的作用和using声明的使用方式。
摘要由CSDN通过智能技术生成

一、 使用工具:Vistual Studio 2022
二、 第一个c++程序

//this is a simple program
//count the girth and area
#include<iostream> 
using namespace std;//命名空间,解决不同空间的变量或函数名冲突问题
int main()//主函数,没有这个或者打错会导致程序无法运行
{
 cout<<"Hello World!"<<endl;// cout为输出,endl为换行
 double r,girth,area;
 const double PI = 3.1415;
 cout<<"please input radius:\n";
 cin>>r;//cin为输入
 girth = 2*PI*r;
 area=PI*r*r;
 cout<<"radius="<<r<<endl;
 cout<<"girth = "<<girth<<endl;
 cout<<"area = "<<area<<endl; 
  return 0;//返回值
}

三.补充知识

  1. 在 C++ 中,分号是语句结束符。也就是说,每个语句必须以分号结束。它表明一个逻辑实体的结束
    2.C语言中文网关于头文件以及命名空间的解释

C++ 是在C语言的基础上开发的,早期的 C++ 还不完善,不支持命名空间,没有自己的编译器,而是将 C++ 代码翻译成C代码,再通过C编译器完成编译。这个时候的 C++ 仍然在使用C语言的库,stdio.h、stdlib.h、string.h 等头文件依然有效;此外 C++ 也开发了一些新的库,增加了自己的头文件,例如:
iostream.h:用于控制台输入输出头文件。
fstream.h:用于文件操作的头文件。
complex.h:用于复数计算的头文件。
和C语言一样,C++ 头文件仍然以.h为后缀,它们所包含的类、函数、宏等都是全局范围的。

后来 C++ 引入了命名空间的概念,计划重新编写库,将类、函数、宏等都统一纳入一个命名空间,这个命名空间的名字就是std。std 是standard 的缩写,意思是“标准命名空间”。

但是这时已经有很多用老式 C++开发的程序了,它们的代码中并没有使用命名空间,直接修改原来的库会带来一个很严重的后果:程序员会因为不愿花费大量时间修改老式代码而极力反抗,拒绝使用新标准的C++代码

C++ 开发人员想了一个好办法,保留原来的库和头文件,它们在 C++中可以继续使用,然后再把原来的库复制一份,在此基础上稍加修改,把类、函数、宏等纳入命名空间 std 下,就成了新版 C++标准库。

这样共存在了两份功能相似的库,使用了老式 C++ 的程序可以继续使用原来的库,新开发的程序可以使用新版的 C++ 库。

为了避免头文件重名,新版 C++ 库也对头文件的命名做了调整,去掉了后缀.h,所以老式 C++ 的iostream.h变成了iostream,fstream.h变成了fstream。而对于原来C语言的头文件,也采用同样的方法,但在每个名字前还要添加一个c字母,所以C语言的stdio.h变成了cstdio,stdlib.h变成了cstdlib。

需要注意的是,旧的 C++ 头文件是官方所反对使用的,已明确提出不再支持,但旧的C头文件仍然可以使用,以保持对C的兼容性。实际上,编译器开发商不会停止对客户现有软件提供支持,可以预计,旧的 C++ 头文件在未来数年内还是会被支持。

3.关于std和域解析操作符
命名空间的声明可以分为全局声明和main()函数内部声明,因此在内部声明的函数名出现在其他函数内仍要继续声明。
**’::’**为域解析操作符,用于指明要使用的命名空间。如

LI::bl
Wa::bl

也可以用using声明 Li::fp,它的意思是,using 声明以后的程序中如果出现了未指明命名空间的 fp,就使用 Li::fp;但是若要使用Wa定义的 fp,仍然需要 Wa::fp。如:

using LI::bl
fp=3
Wa::fp=5
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值