“C++入门到精通 | 人工智能与物联网开发基础系列②”笔记(更新中...)

“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 “C++入门到精通 | 人工智能与物联网开发基础系列②”笔记(更新中...)
文章图片


??2.3 命名空间namespace(有点相像C语言中的结构体操作)
??为了解决命名重复的问题。如在分组1里存在命名:nLibray,而在分组2里也存在nLibray,则在使用时需要对不同组的命名进行操作。其中,std:标准命名空间,其中包含了cout/cin/… 【“C++入门到精通 | 人工智能与物联网开发基础系列②”笔记(更新中...)】“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) “C++入门到精通 | 人工智能与物联网开发基础系列②”笔记(更新中...)
文章图片

??3.1 函数
??1.两种不同版本的HelloWorld

    推荐阅读