“C++入门到精通 | 人工智能与物联网开发基础系列②”笔记
1.C++简介
2.HelloWorld与命名空间
??2.1 HelloWorld
??1.两种不同版本的HelloWorld
????1)、C版本的HelloWorld
// C语言版本的HelloWorld
#include "stdio.h"//引入所需库文件int main(int argc, char *argv[])
{
printf("C - HelloWorld!\n");
//显示"C - HelloWorld!",并换行
return 0;
}
????2)、C++版本的HelloWorld
// C++ 语言版本的HelloWorld
#include "iostream"
using namespace::std;
//引入所需库文件并使用标准的std命名空间(其中包含了cout、cin..)int main(int argc, char *argv[])
{
cout<< "C++ - HelloWorld!" <
??2.如何在Linux环境中编写与编译HelloWorld
# Linux终端
onme@ubuntu:~$ ls#显示当前目录下所有文件(不包括隐藏文件)
CASIAdataDownloadsmyLearnDocROSVideos
Desktopexamples.desktopPicturessnapWin_Linux
DocumentsMusicPublicTemplates
onme@ubuntu:~$ mkdir test_code #1新建一个test_code文件夹用于保存测试代码
onme@ubuntu:~$ ls #新建好test_code文件夹之后
CASIAdataDownloadsmyLearnDocROStest_code
Desktopexamples.desktopPicturessnapVideos
DocumentsMusicPublicTemplatesWin_Linux
onme@ubuntu:~$ cd test_code/ #2进入到文件夹中(Tab具有自动补齐功能,要好好利用)
onme@ubuntu:~/test_code$ ls #新建的test_code当前文件夹为空
onme@ubuntu:~/test_code$ touch hello.c hello.cpp #3新建一个hello.c C语言文件和hello.cpp C++语言文件
onme@ubuntu:~/test_code$ ls #查看新建两个文件之后的文件夹便多了以下两个文件
hello.chello.cpp
onme@ubuntu:~/test_code$ vi hello.c #4使用vim编辑hello.c
# vim编辑界面 - 初期使用vim编辑可能不习惯 - 具体可看看vim如何编辑
#1 按 a 进入插入模式,进入编辑状态;然后正常的编写即可
// C语言版本的HelloWorld
#include "stdio.h"//引入所需库文件int main(int argc, char *argv[])
{
printf("C - HelloWorld!\n");
//显示"C - HelloWorld!",并换行
return 0;
}
#2 编写完之后,按 ESC 进入普通模式(即退出编辑)
#3 在普通模式下,输入 :w 保存hello.c文件
#-------------------------------------------------------------------------------
#4 利用vim多窗口编辑功能,在普通模式下输入 :sp hello.cpp 以打开一个视窗编辑hello.cpp文件
#5 同理在hello.cpp中按 a 进入插入模式开始编写程序
(视窗切换为普通模式下按ctrl+w+j(移至下面视窗)或 ctrl+w+k(移至上面视窗) 或 ctrl+w+w )
// C++ 语言版本的HelloWorld
#include "iostream"
using namespace::std;
//引入所需库文件并使用命名空间int main(int argc, char *argv[])
{
cout<< "C++ - HelloWorld!" <
# Linux终端
#1 编写好hello.c以及hello.cpp之后
#2 使用gcc编译hello.c 生成可执行文件ctest
onme@ubuntu:~/test_code$ gcc -o ctest hello.c
#3 执行ctest文件,输出 C - HelloWorld!
onme@ubuntu:~/test_code$ ./ctest
C - HelloWorld!
#-----------------------------------------------
#4 使用g++编译hello.cpp生成可执行文件cpptest
onme@ubuntu:~/test_code$ g++ -o cpptest hello.cpp
#5 执行cpptest文件,输出 C++ - HelloWorld!
onme@ubuntu:~/test_code$ ./cpptest
C++ - HelloWorld!
??2.2 输入输出流
??相当于C语言的scarf和printf
文章图片
??2.3 命名空间namespace(有点相像C语言中的结构体操作)
??为了解决命名重复的问题。如在分组1里存在命名:nLibray,而在分组2里也存在nLibray,则在使用时需要对不同组的命名进行操作。其中,std:标准命名空间,其中包含了cout/cin/… 【“C++入门到精通 | 人工智能与物联网开发基础系列②”笔记(更新中...)】
文章图片
??如下面的例子:
// -------------------------- 引入所需库 --------------------------
#include
#include
// --------------------------命名空间--------------------------
using namespace::std //使用标准命名空间,里面包含了cout/cin/..
//定义新的命名空间group1
namespace group1 {
int m = 200;
int n = 10;
}
//定义新的命名空间group2,这两个命名空间中都有命名:n
namespace group2 {
int x;
int n = 50;
}
// --------------------------执行函数--------------------------
int main(int argc, char *argv[])
{
using group2::x;
//使用group2命名空间中的x,两个冒号是作用域运算符
cout << x << endl;
//输出x的值,它初始化没有赋值,所以输出为0
x = -100;
//对x进行赋值 group1::n *= 2;
//利用作用域运算符,使得group1中的n乘以2
cout << group1::n << endl;
//输出group1中的n的值,输出:10X2=20
cout << group1::m << endl;
//输出group1中的m的值,输出:200 group2::n *= 3;
//利用作用域运算符,使得group2中的n乘以3
cout << group::n << endl;
//输出group2中的n的值,输出:50X3=150
cout << x << endl;
//输出group2中的x的值,输出:-100 system("PAUSE");
return 0;
}
3.内联函数(inline)
文章图片
??3.1 函数
??1.两种不同版本的HelloWorld
推荐阅读
- 个人日记|K8s中Pod生命周期和重启策略
- 学习分享|【C语言函数基础】
- C++|C++浇水装置问题
- 数据结构|C++技巧(用class类实现链表)
- C++|从零开始学C++之基本知识
- 步履拾级杂记|VS2019的各种使用问题及解决方法
- leetcode题解|leetcode#106. 从中序与后序遍历序列构造二叉树
- 动态规划|暴力递归经典问题
- 麦克算法|4指针与队列
- 遇见蓝桥遇见你|小唐开始刷蓝桥(一)2020年第十一届C/C++ B组第二场蓝桥杯省赛真题