C++入门(一)

目录

命名空间:

为什么要提出命名空间?

命名空间的定义:

命名空间的使用:

加命名空间名称及作用域限定符:

使用using将命名空间中某个成员引入:

使用using namespace命名空间名称引用:

C++输入&输出:

库的导入:

使用说明:

输入和输出:

输入流:

输出流:

缺省参数:

缺省参数的概念:

缺省参数的分类:

全缺省参数:

半缺省参数:

命名空间:

为什么要提出命名空间?

#include <stdio.h>
#include <stdlib.h>int rand = 0;
int main()
{printf("%d\n", rand);return 0;
}

输出结果:

由于cpp中包含的stdlib库中有rand变量,这个变量的名称存在于全局作用域当中,可能会与cpp文件中定义的变量发生冲突,所以需要一种方式区分这两个变量,这时就需要命名空间规划命名空间域,对标识符名称进行本地化,以免命名冲突,从而解决这个问题。

命名空间的定义:

namespace code
{int rand = 0;
}

定义命名空间需要使用namespace关键字,后面跟着·命名空间的名字,然后一对{}将想要命名的成员包起来

//命名空间内部还可以包含函数和结构体
namespace code
{int rand = 0;int Add(int x, int y){return x + y;}struct Node{struct Node* next;int val;};
}//命名空间还可以嵌套设计
namespace code1
{int rand1 = 0;
namespace code 2
{int rand2 = 0;
}
}

命名空间的使用:

加命名空间名称及作用域限定符:

#include <stdio.h>
#include <stdlib.h>
namespace code
{int rand1 = 0;int rand2 = 0;
}int main()
{printf("%d\n", code::rand1);return 0;
}

使用using将命名空间中某个成员引入:

#include <stdio.h>
#include <stdlib.h>
namespace code
{int rand1 = 0;int rand2 = 0;}
using code::rand1;
int main()
{printf("%d\n", rand1);return 0;
}

使用using namespace命名空间名称引用:

#include <stdio.h>
#include <stdlib.h>
namespace code
{int rand1 = 0;int rand2 = 0;}
using namespace code;
int main()
{printf("%d\n", rand1);return 0;
}

C++输入&输出:

库的导入:

#include <iostream>
using namespace std;

iostream是cpp内部的库,std是cpp标准库的命名空间名,cpp将标准库的定义和实现都放到了这个命名空间中,这里需要使用std命名空间内部包含的变量和关键字,所以需要将std命名空间展开

使用说明:

这里的输入和输出要使用iostream头文件包含的std命名空间内的关键字:

cout和endl控制输入操作,其中cout是全全局对象流,endl是特殊的cpp符号,表示换行输出;cout与<<配合使用,向控制台输出对象,功能类似于C语言中的printf

cin是全局流对象,搭配>>配合使用,由键盘输入到控制流当中,功能类似于C语言中的scanf

输入和输出:

输入流:

#include <iostream>
using namespace std;int  main()
{cout << "hello world" << endl;return 0;
}

输出结果:

输出流:

#include <iostream>
using namespace std;int  main()
{int a = 0;cin >> a;cout << a << endl;return 0;
}

输出结果:


缺省参数:

缺省参数的概念:

缺省参数是声明或定义函数时为函数指定一个缺省值,在调用该函数时,如果没有指定实参则·采取该形参的缺省值,否则使用指定的实参

#include <iostream>
using namespace std;
void Node(int a = 0)
{cout << a << endl;
}int  main()
{Node();Node(10);
}

缺省参数的分类:

全缺省参数:

void Node(int a = 1,int b = 2,int c = 3)
{cout << a << endl;cout << b << endl;cout << c << endl;
}

半缺省参数:

void Node(int a ,int b = 2,int c = 3)
{cout << a << endl;cout << b << endl;cout << c << endl;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/773683.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【c++】类和对象(四)深入了解拷贝构造函数

&#x1f525;个人主页&#xff1a;Quitecoder &#x1f525;专栏&#xff1a;c笔记仓 朋友们大家好啊&#xff0c;本篇内容带大家深入了解拷贝构造函数 目录 1.拷贝构造函数1.1传值调用的无限调用1.2浅拷贝1.3深拷贝1.4深拷贝的实现 1.拷贝构造函数 拷贝构造函数是一种特殊的…

yolov5+pyside6+登录+用户管理目标检测可视化源码

一、软件简介 这是基于yolov5目标检测实现的源码&#xff0c;提供了用户登录功能界面&#xff1b; 用户需要输入正确的用户名和密码才可以登录。如果是超级管理员&#xff0c;可以修改普通用户的信息&#xff0c;并且在检测界面的右上角显示【管理用户】按钮。 支持图片、视频、…

程序员快速上手一门技术

1 明确需求 明确学这个技术的需求&#xff1a;如工作需求或职业发展 2 了解技术 2.1 这个技术是做什么&#xff1f; 2.2 这个技术的优缺点&#xff1f; 2.3 这个技术适用什么场景&#xff1f; 3 去官网文档查看技术 4 快速上手 4.1 快速学习增删改查&#xff0c;写出一…

访问二维数组本质

先从一维数组讲起 int main() {int arr[5] { 1,2,3,4,5 };for (int i 0; i < 5; i) {printf("%d",arr[i]); //对数组进行访问}return 0; } 其实 arr [ i ] * (arr i) 这两个是完全相等的&#xff0c;在c语言指针&#xff08;1&#xff09;8.数组名与 …

机器人深度学习IMU和图像数据实现焊接精细操作

在双电极气体保护金属弧焊 &#xff08;DE-GMAW&#xff09; 中&#xff0c;对焊枪和旁路电极位置的精确控制是至关重要的。为了这一过程&#xff0c;科研团队提出了安装微型惯性测量单元&#xff08;IMU&#xff09;传感器和摄像头&#xff0c;来记录焊工控制焊枪的移动和微调…

如何配置高质量的告警

运维工程师吐槽起告警问题&#xff0c;人人都是BBKing&#xff01; 每天应对花式告警问题&#xff0c; 无关紧要的、短时急剧爆发的 被疲劳告警淹没的重要告警 和每天崭新的太阳一样&#xff0c; 每次的告警也是独一无二的&#xff01; 想躺平&#xff0c;不可能 下一秒…

01背包(acwing闫氏DP分析法)

题目描述&#xff1a; 有 N 件物品和一个容量是 V的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi&#xff0c;价值是 wi。 求解将哪些物品装入背包&#xff0c;可使这些物品的总体积不超过背包容量&#xff0c;且总价值最大。 输出最大价值。 输入格式&#xff1a…

MATLAB:微分方程(组)数值解

一、显式微分方程 clc,clear tspan [0:10]; y0 2; [t1,y1] ode23(odefun_1,tspan,y0); %求数值解&#xff0c;精度相对低 [t2,y2] ode113(odefun_1,tspan,y0); %求数值解&#xff0c;精度相对高 yt sqrt(tspan1)1; %求精确解 subplot(1,2,1) plot(t1,y1,bo,t2,y2,r*,tspa…

C语言:动态内存管理(malloc,calloc,realloc,free)

目录 前言 malloc函数 free函数 calloc函数 realloc函数 前言 在这一章节将讲解动态内存分配&#xff0c;它可以在程序的堆区创建一块内存&#xff0c;在这块内存中存什么值就是由自己决定的了 开辟的空间有两个特点&#xff1a; 1. 空间开辟的大小是固定的 2. 数组在…

视频 | 轨迹模型及其它潜变量模型理论与实践

2024年3月20日&#xff0c;郑老师开办了“春分”临床统计学沙龙&#xff0c;本期沙龙和诸位分享了轨迹增长模型&#xff0c;以及其它潜变量模型包括潜类别模型和潜剖面模型的详细介绍和文献解读&#xff0c;R语言代码实践也有分享&#xff01; 非常感谢各位朋友在忙碌的工作生活…

线性数据结构----(数组,链表,栈,队列,哈希表)

线性数据结构 数组链表栈使用场景 队列应用场景 哈希表特点哈希函数&#xff0c;哈希值&#xff0c;哈希冲突键值对 Entry 开放寻址法和拉链法 参考文档 数组 数组(Array) 是一种很常见的数据结构。由相同类型的元素组成&#xff0c;并且是使用一块连续的内存来存储的。 在数组…

安装redis时候修改过的配置文件

只要是石头&#xff0c;到哪里都不会发光的 bind 绑定主机某个网卡对应的IP地址&#xff0c;如果某个主机有两个网卡A和B&#xff0c;那么绑定了A&#xff0c;通过B连接就会无法访问protected-mode 保护模式 Yes为只能本地访问port 启动的端口号pidfile pid存放的位置&#xff…

python django实战开发序列化器的一个应用心得分享

需求: 查询的时候返回不包括SharePasswd 字段, 但是新增操作需要用到该字段 再不写多个model模型和序列化器的前提下实现 如果您在查询&#xff08;GET 请求&#xff09;时不希望返回 SharePasswd 字段&#xff0c;但在新增&#xff08;POST 请求&#xff09;时需要用到该字段…

Python3爬取2023省市区

爬取地址https://www.stats.gov.cn/sj/tjbz/tjyqhdmhcxhfdm/2023/ import re import requests import pandas as pd import warnings warnings.filterwarnings("ignore") import time from lxml import etree import pymysql t ,urls ,names [],[],[] INDEX_URL &…

Java两地经纬度通过高德api获取两地距离(公里)

代码如下&#xff1a; String startLongitude entity.getLONGITUDE(); // 起点&#xff08;当前位置&#xff09;经度String startLatitude entity.getLATITUDE(); // 起点纬度String endLongitude entity.getLO(); // 终点经度String endLatitude entity.getLA(); …

Spring框架介绍及详细使用

前言 本篇文章将会对spring框架做出一个比较详细的讲解&#xff0c;并且每个知识点基本都会有例子演示&#xff0c;详细记录下了我在学习Spring时所了解到全部知识点。 在了解是什么spring之前&#xff0c;我们要先知道spring框架在开发时&#xff0c;服务器端采用三层架构的方…

电子元器件批发采购的数字化转型与技术应用

电子元器件批发采购的数字化转型和技术应用是提高效率、优化供应链管理以及增强竞争力的关键。以下是一些数字化转型和技术应用的方面&#xff1a; 电子商务平台&#xff1a;建立并优化电子商务平台&#xff0c;提供在线采购功能&#xff0c;使客户能够方便地浏览产品、下订单、…

ABNDP: Co-optimizing Data Access and Load Balance in Near-Data Processing——论文泛读

ASPLOS 2023 Paper 论文阅读笔记整理 问题 近数据处理&#xff08;NDP&#xff09;是一种很有前途的体系结构范式&#xff0c;可以解决数据密集型应用程序的内存墙挑战。基于3D堆叠存储器的典型NDP系统包含大量并行处理单元&#xff0c;每个并行处理单元都可以访问其本地存储…

HTML基础:8个常见表单元素的详解

你好&#xff0c;我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端程序媛。 后台回复“前端工具”可免费获取开发工具&#xff0c;持续更新。 今天来说说 HTML 表单。它是用于收集用户输入信息的元素集合。例如文本框、单选按钮、复选框、下拉列表等。 用户经常填写的表…

​深入理解JMeter性能测试日志:分析并发用户行为与吞吐量指标

在进行软件性能测试时&#xff0c;使用Apache JMeter等工具能够生成详尽的测试报告和日志。这些数据对于评估应用程序的性能至关重要。本文将针对JMeter生成的压测日志数据进行详细解析&#xff0c;并解释特定字段的意义。 日志数据摘要&#xff1a; 以下是整个JMeter压测日志…