自学c++笔记(二)

2023-11-16

笔记记录本人学习C++路上的一些摘要与总结,供本人阅读同时也分享与他人。

变量的定义

int carrots;  
carrot = 25;
cout << carrots //会输出25

int:表示整数
carrot :来标识存储在该内存单元的值
cout 可以识别和显示不同数据类型

(符号"<<“和”>>"被选择用来指示信息流的方向)
与cout一样,cin也是一个智能对象。它可以将通过键盘输入的一系列字符(即输入)转换为接收信息的变量能够接收的形式。

也可以使用cout进行拼接,如将4条输出语句合并为一条

cout << "Now you " << carrots << " carrots" << endl;
//输出为Now you 25 carrots

类是用户定义的一种数据类型。类之于对象就像类型之于变量。
类定义描述的是数据格式及其用法,而对象则是根据数据格式规范创建的实体。

头文件的不同

C/C++的头文件不同,在C中包含sqrt()函数的头文件为math.h,而C++则为cmath,在C++也可以用math.h。
在程序中使用一些库函数时,如sqrt(),必须提供原型(double sqrt(double))原型一般在头文件中,所以需要用到一些特定函数时,我们要加特定的头文件。

*如果在linux和UNIX系统中编译时,可能会无法搜索到库,需要在命令行结尾使用-lm选项,如

g++ sqrt.c -lm

C++允许在程序的任何地方声明新变量

对于有返回值的函数,应使用关键字return来提供返回值,并结束函数。

名称空间std

using namespace std; 放在一个函数里面,这个函数才能使用cout,如果想让所有函数不一一在函数体内声明,就要在所有函数前(最开头)这条。

让程序能够访问名称空间std的方法有四种,下面举例一下
1.将using namespace std; 放在所有函数定义之前,让文件中所有函数都能够使用名称空间std中所有的元素。如下:

//都可以使用名称空间std中的所有元素
#include<iostream"
using namespace std;
int main()
{
	cout << "YES" << endl;   
	int mac()
	{
	cout << "YES" << endl;
	}
	return 0;
}

2.将using namespace std; 放在特定的函数中,让该函数能够使用名称空间std中的所有元素。如下

....
cout << "No" << endl; //错误函数外没有加using namespace std,不能直接使用cout和endl
int mac()
{
	using namespace std;
	cout << "No" << endl;  //函数里面有using namespace std; ,可以使用cout和endl
}

3.在特定的函数中使用类似using std::cout; 这样的编译指令,而不是using namespace std; 。让该函数能够使用指定的元素,如cout。

//using namespace std;
using std::cout //编译指令后,可以直接使用cout
cout << "I'm OMGMac " << std::endl; //endl没有编译过,因此需要加std::前缀

4.完全不使用编译指令using,而在需要使用名称空间std中的元素时使用前缀std::,如下所示:

std::cout << "I'm OMGMac " << std::endl;

本人水平有限,上述信息仅供学习参考,如有错误和不妥之处,请多多指教。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自学c++笔记(二) 的相关文章

  • 结构化绑定中缺少类型信息

    我刚刚了解了 C 中的结构化绑定 但有一件事我不喜欢 auto x y some func is that auto正在隐藏类型x and y 我得抬头看看some func的声明来了解类型x and y 或者 我可以写 T1 x T2 y
  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • 在 xaml 中编写嵌套类型时出现设计时错误

    我创建了一个用户控件 它接受枚举类型并将该枚举的值分配给该用户控件中的 ComboBox 控件 很简单 我在数据模板中使用此用户控件 当出现嵌套类型时 问题就来了 我使用这个符号来指定 EnumType x Type myNamespace
  • 根据属性的类型使用文本框或复选框

    如果我有这样的结构 public class Parent public string Name get set public List
  • 机器Epsilon精度差异

    我正在尝试计算 C 中双精度数和浮点数的机器 epsilon 值 作为学校作业的一部分 我在 Windows 7 64 位中使用 Cygwin 代码如下 include
  • 随着时间的推移,添加到 List 变得非常慢

    我正在解析一个大约有 1000 行的 html 表 我从一个字符串中添加 10 个字符串 td 每行到一个list td
  • 如何在 C++ 中标记字符串?

    Java有一个方便的分割方法 String str The quick brown fox String results str split 在 C 中是否有一种简单的方法可以做到这一点 The 增强分词器 http www boost o
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 需要帮助优化算法 - 两百万以下所有素数的总和

    我正在尝试做一个欧拉计划 http projecteuler net问题 我正在寻找 2 000 000 以下所有素数的总和 这就是我所拥有的 int main int argc char argv unsigned long int su
  • 方程“a + bx = c + dy”的积分解

    在等式中a bx c dy 所有变量都是整数 a b c and d是已知的 我如何找到整体解决方案x and y 如果我的想法是正确的 将会有无限多个解 由最小公倍数分隔b and d 但我只需要一个解决方案 我可以计算其余的 这是一个例
  • 人脸 API DetectAsync 错误

    我想创建一个简单的程序来使用 Microsoft Azure Face API 和 Visual Studio 2015 检测人脸 遵循 https social technet microsoft com wiki contents ar
  • C# 列表通用扩展方法与非通用扩展方法

    这是一个简单的问题 我希望 集合类中有通用和非通用方法 例如List
  • 如何定义一个可结构化绑定的对象的概念?

    我想定义一个concept可以检测类型是否T can be 结构化绑定 or not template
  • 两个类可以使用 C++ 互相查看吗?

    所以我有一个 A 类 我想在其中调用一些 B 类函数 所以我包括 b h 但是 在 B 类中 我想调用 A 类函数 如果我包含 a h 它最终会陷入无限循环 对吗 我能做什么呢 仅将成员函数声明放在头文件 h 中 并将成员函数定义放在实现文
  • C# xml序列化必填字段

    我需要将一些字段标记为需要写入 XML 文件 但没有成功 我有一个包含约 30 个属性的配置类 这就是为什么我不能像这样封装所有属性 public string SomeProp get return someProp set if som
  • 空指针与 int 等价

    Bjarne 在 C 编程语言 中写道 空指针与整数零不同 但 0 可以用作空指针的指针初始值设定项 这是否意味着 void voidPointer 0 int zero 0 int castPointer reinterpret cast
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • 如何在 Android 中使用 C# 生成的 RSA 公钥?

    我想在无法假定 HTTPS 可用的情况下确保 Android 应用程序和 C ASP NET 服务器之间的消息隐私 我想使用 RSA 来加密 Android 设备首次联系服务器时传输的对称密钥 RSA密钥对已在服务器上生成 私钥保存在服务器
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern

随机推荐

  • 【redis事务】@Transactional对Redis事务起作用(包含redis+lua)

    redis事务 Transactional对Redis事务起作用 包含redis lua 一 前言 二 准备 三 StringRedisTemplate 开启事务 四 关键代码 验证 Transactional对redis事务是否生效 五
  • java帧结构_详细解析Java虚拟机的栈帧结构

    什么是栈帧 正如大家所了解的 Java虚拟机的内存区域被划分为程序计数器 虚拟机栈 本地方法栈 堆和方法区 什么 你还不知道 赶紧去看看 Java虚拟机内存结构及编码实战 这次要介绍的栈帧 Stack Frame 就是Java虚拟机中的虚拟
  • stm32F1的JTAG、SWJ作为普通引脚使用。禁用JTAG、SWJ。

    stm32F1的JTAG SWJ引脚 为 PA13 PA14 PA15 PB3 PB4 单片机复位后 默认功能为 JTAG SWJ 而实际使用中 一般只使用 SWCLK SWDIO这两个引脚做 Debug 其余的引脚可以空出来 重新定义为普
  • 红外避障小车(ZK-2)初步拼装

    红外避障小车 ZK 2 初步拼装 一 拼装零件 1 M330螺丝4个 2 M312铜柱4个 3 M8螺丝4个 M36螺丝8个 4 码盘2个 5 M3螺母8个 6 T型小支架4个 7 船型开关1个 8 轮胎2个 9 万向轮1个 10 电池盒1
  • [Java反序列化]AspectJWeaver反序列化

    Java反序列化 AspectJWeaver反序列化 前言 2021年二月份ysoserialize增加了这条AspectJWeaver链子 之后陆续在2021年的D3CTF以及国赛决赛中都出现了这条链子的攻击 所以学习一下AspectJW
  • 深入学习jquery源码之replaceWith()和replaceAll()

    深入学习jquery源码之replaceWith 和replaceAll replaceWith content fn 概述 将所有匹配的元素替换成指定的HTML或DOM元素 参数 content String Element jQuery
  • 网络推广引流方法大全

    在互联网的圈子里有关网络推行的问题是一个永久的话题 你的商品哪怕再好假如没有推行进来一切都是白搭 经常听有人说 酒香不怕巷子深 但分离当今社会的方式 特别是在竞争日益严酷的今天我想 酒香也会怕巷子深了 进入互联网时期 企业产品推行再也不能仅
  • Nosql 概念释义

    进几年常常听到一个高大上的名字 osql 再加上鼓吹者说Nosql将会消灭关系数据库 今天怀着好奇心里 简单了解了以下Nosql的概念 发现其实没有那么神秘 被鼓吹者夸大其词了 导致我等门外汉一下子给打懵了 我认为 一个新技术要想让大家使用
  • IDEA插件系列(9):MyBatisX插件——Mybatis插件

    MybatisX插件功能 mapper和xml可以来回跳转 mybatis xml 映射器 xml提示 mapper和xml支持自动提示 如jpa 参考MybatisCodeHelperPro 集成mybatis生成器Gui 从免费myba
  • 【译】A gentle introduction to self-sovereign identity

    2017年5月17日 ANTONYLEWIS2015 2017年5月 印度互联网和社会智库中心发布了一份报告 详细说明了印度国家身份数据库 Aadhaar 泄漏可能会泄露个人信息的方式 该信息涉及超过1 3亿印度国民 泄密事件为财务欺诈创造
  • 关于习而学的软件工程教育

    邹欣老师的博客在此 http www cnblogs com xinz archive 2012 01 08 2316717 html 我不是很同意邹欣老师的观点 对于一个大学生 思想远比实践经验要重要 子曾经曰过 世界上最简单的事情就是学
  • 再也不用手写爬虫了!推荐5款自动爬取数据的神器!

    大家好 我是菜鸟哥 今天给大家推荐一些不错的神器 网络信息的时代 想要收集信息 爬虫是一项必不可少的工具 对于很多小伙伴们来说 只是想利用爬虫进行快速的内容抓取 而并不想太过深入的学习爬虫 利用python编写爬虫程序虽然炫酷 但是需要耗费
  • java字符串模式匹配next_字符串的模式匹配详解--BF算法与KMP算法

    一 BF算法 BF算法是普通的模式匹配算法 BF算法的思想就是将目标串S的第一个字符与模式串P的第一个字符进行匹配 若相等 则继续比较S的第二个字符和P的第二个字符 若不相等 则比较S的第二个字符和P的第一个字符 依次比较下去 直到得出最后
  • 关于python中的闭包与for循环(可变变量)的矛盾以及如何避免

    本文只讲一个重点 闭包与for循环之间的矛盾以及避免的方法 关于闭包的概念 请参考网上的概念 废话不多说来看以下代码 def count fs for i in range 1 4 def f return i i fs append f
  • AXI DMA学习

    AXI总线协议 一 概述 AXI 高性能扩展总线接口 Advanced eXtensible Interface 是ARM AMBA 单片机总线系列中的一个协议 是计划用于高性能 高主频的系统设计的 AXI协议是被优化用于通过使用Xilin
  • ibms智能化系统集成服务器,智能化集成管理系统(IBMS)

    IBMS是在BMS的基础上更进一步的与通信网络系统 信息网络系统实现更高一层的建筑集成管理系统 IBMS 就是建立在5A集成之上的更高层次的集成 5A是指OA 办公智能化 BA 楼宇自动化 CA 通讯传输智能化 FA 消防智能化 SA 安保
  • JAVA多态机制简述

    多态是指方法或对象具有多种形态 是oop的第三大特征 其是建立在封装和继承之上的 多态的体现 1 方法多态 1 重载体现多态2 重写体现多态 2 对象多态 1 对象的编译类型和运行类型可以不一致 编译类型在编译时就会确定 2 对象的运行类型
  • 渗透测试--medium_socnet

    靶机下载地址 https download vulnhub com boredhackerblog medium socnet ova 实验环境 Kali IP 192 168 172 134 靶机 medium socnet 主机发现 a
  • QT学习——QTreeView获取选中单行数据和多行数据

    个人感觉QTreeView有些地方的使用没有MFC的CListCtrl方便 比如在不响应单击信号的情况下 获取选中行的数据 单行和多行 也许因为我是新手吧 一 获取单行选中的数据 QModelIndex selected ui treeVi
  • 自学c++笔记(二)

    笔记记录本人学习C 路上的一些摘要与总结 供本人阅读同时也分享与他人 变量的定义 int carrots carrot 25 cout lt lt carrots 会输出25 int 表示整数 carrot 来标识存储在该内存单元的值 co