IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 与C++的初相识 -> 正文阅读

[C++知识库]与C++的初相识

1.头文件的引用与命名空间的初相识(C++文件以.cpp为后缀哦)

//头文件包含形式
#include <stdio.h>//像C语言那样包含C语言库
#include <cstdio>//去掉.h,在文件名前加c,包含C语言库时可如此操作
#include <iostream>//C++标准输入输出流头文件
//与命名空间的初相识
namespace 空间名1
{
	int a = 1;
}
namespace 空间名2
{
	int a = 2;
}
//命名空间要点:
// 1.作用:增加相同标识符的使用率
//2.变量为全局变量

对命名空间的访问。

?1.1? ? ?::作用域分辩符作用1.空间名限定,类名限定。2.用来标识全局变量

? 1.2? ? ? using namespace 空间名,使用

namespace 空间名1
{
	int a = 1;//空间的成员,数据
	void print();
}
void 空间名1::print()//::四个小点叫作用域分辩符,表明此函数来自哪里(空间名限定)
{
	printf("这是来自空间名1中的函数哦");
}
namespace 空间名2
{
	int a = 2;
	void print();
}


int main()
{
	空间名1::a = 99;
	空间名2::print();//前缀比较麻烦,就有了新的方法
	//using语法,using namespace 空间名
	using namespace 空间名1;
	a = 999;//来自空间名1的变量a
	//不要存在二意性问题(编译器不知道哪个)
	using namespace 空间名2;
	a = 999;//这里的a报错:“a”不明确
	空间名2::a = 9999;//这里就不会报错,方法各有千秋
	return 0;
}

至于空间名的嵌套,访问,大家一看就会

namespace 空间名2
{
	int a = 2;
	void print();
	namespace 空间名3
	{
		int a = 3;
	}
}



	空间名2::空间名3::a = 999;//方法1
	using namespace 空间名2;//方法2
	空间名3::a = 99;

2基本输入和输出

一般包含命名空间using namespace std;

输出cout<<输出值,输入cin>>输入值? .C++支持C语言格式控制字符

#include <iostream>//C++标准输入输出流头文件
using namespace std;//不要忘了加这个

	char str[] = "love you";
	cout << "I love you!";
	cout << str;
	//一次打印多个数据
	cout << str << "\n" << c << "\t" << "哈哈哈";
	//强制转换
	cout << str << "\n" << int(c) << "\t" << "哈哈哈";//C++方式
	cout << str << endl << (int)c << "\t" << "哈哈哈";
	//C++中可用关键字endl替换\n的作用

	int num = 0;
	float fnum = 0.0f;
	char strr[10] = "";
	printf("请输入一个整数,一个浮点数,一个字符串");
	cin >> num >> fnum >> strr;

输入的空格问题

	char str[10] = "";
	cin >> str;
	cout << str;
	char s;//输入I love you时只会将I传给s
	cin >> s;
	cout << s;
	while (getchar() != '\n');//这是上面的三行问题的解决方案,家在char s之前后都可
	//对象调用成员,接受空格输入
	cin.getline(str, 9);
	cout.write(str, 9);
}

如果没有加using namespace std;那么std::cin>>? ?std::cout<<? ? ?C++标准库调用std::

新的数据类型

2.1bool类型占用一个字节,计算机中非零表示成立,0和空表示不成立

用于充当函数返回值,开关,输出(只有0和1)

C++中有专有的赋值方式false true

C++中空指针用nullptr

2.2引用类型

基本引用? ? ? ? ?类型名&别名=要起别名的量

常引用(右值引用)

void testbool()
{
	bool num = -1;
	num = false;
	num = true;
	cout << num << endl;
	int* p = nullptr;//nullptrC++新引入的关键字
}
void printstr(const char* str)//形参必须用const修饰
{
	cout << str << endl;
}
void modifyB(int& a) //int&a=实参
{
	a = 999;
}
int num = 999;
void modifyPointA(int* p)
{
	p = &num;
}
void modifyPointB(int*& p)//引用
{
	p = &num;
}
void printRIghtvalue(int&& m)//可修改num的值
{
	m = 9;
	cout << m << endl;
}
void testquote()
{
	int hhh = 3;
	//类型&别名=要起别名的量
	int& 哈哈哈 = hhh;//引用
	哈哈哈 = 999;
	cout << hhh << endl;
	printstr("llllll");
	int& x = 1;//报错
	const int& x = 1;//不报错,常量取别名要用const修饰
	int&& x = 1;//不报错常量是右值,右值引用
    //类型名&&别名=右值
}

自动推断类型auto:必须根据赋值的类型推断数据;不能直接推断

auto? p=&a;自动推断p为指针类型

3函数思想

3.1 内敛思想? ? ?inline关键字? ?函数编译完的代码以二进制的形式存在(短小的函数)

默认内敛:在结构体或者类实现的函数

3.2 函数重载? :C++允许同名不同参函数存在(参数的数目,类型,顺序不同)

3.3 函数缺省:C++中允许给函数形参初始化,顺序必须从右往左,不能存在没有缺省的

//内敛函数
inline int Max(int a, int b)
{
	return a > b ? a : b;
}
//函数重载
void print(int a)
{
	cout << a;
}
void print(int a, int b)
{
	cout << a << b << endl;
}
void print(char a, int b)
{
	cout << a << b << endl;
}
//重载调用,优先调用类型一致的
//函数缺省
void print(int a, int b = 2, int c = 4)
{
	cout << a << a + b << c << endl;
}

我是真萌新,就先说到这里啦,有什么不怼的请大佬指正,睡觉喽。

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-14 21:25:37  更:2021-11-14 21:28:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 7:19:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码