随笔分类 - C++
摘要:#一、前言 C的关键字static分两种用法,在面向过程程序设计(c语言中的普通变量和函数)中的使用和在面向对象程序设计(c中的类)中的使用 #二、面向过程程序设计中的static(静态变量、静态函数) 内存分布 特性 代码区 存放代码 全局数据区 全局静态变量和局部静态变量 堆 一般程序的由new
阅读全文
摘要:一、#define 含义 define是宏定义,编译器不对其进行错误检查,在预编译阶段处理,没有作用域限制属于全局常量,在程序中编译器会对定义的常量名以数值进行替换,且每次替换都分配内存,此方法对于大量常量的情况下会占用较多内存从而导致程序效率。 用法 一般用于全局型常量的定义,通常较少使用,在具有
阅读全文
摘要:1、assign assign方法可以理解为先将原字符串清空,然后赋予新的值作替换。 返回类型为 string类型的引用。其常用的重载也有下列几种: a. string& assign ( const string& str ); 将str替换原字串的内容 举例: string testassign
阅读全文
摘要:#前言 C++ Primer Plus读书笔记(三)复合类型 中已经简单介绍过vector是什么,这个系列主要是介绍STL特性。 #声明 vector<ElemType> c; //创建一个空的vector vector<ElemType> c1(c2); //创建一个vector c1,并用c2去
阅读全文
摘要:1、类 不废话,上定义 class ClassName { public: xxx; private: xxx; protected: xxx; } private部分数据只能通过public 提供的接口访问
阅读全文
摘要:1、作用域和链接 int num3; static int num4; int main() { } void func1() { static int num1; int num2; } 上边的代码中num1 和num2 只适用于func1,区别在于num1 在func1没有被调用时也存在于内存中
阅读全文
摘要:1、内联函数 inline int square(x) {return x*x} 2、引用变量 int& 中的& 不是地址运算符,就想定义指针时的char* 一样,int&指的是指向int的引用。 int rate; int & res = rate; 这样使用res 做参数时,按址传递而不再是按值
阅读全文
摘要:1、声明 void fun1(); //该声明在C中的意思是不指定参数,但是在C++中是指定参数为void void func2(...); //C++中不指定参数 2、函数参数为数组区间 STL有数据区间的概念,函数可以使用例如下面的参数 int arr[8] = {}; int func(con
阅读全文
摘要:1. 以上均包含在cctype中 1 #include<cctype> 2 //#include<ctype.h> 2、文件操作 (1)头文件 1 #include<fstream> (2)写文件使用方法 //use ofstream ofstream outFile; //File file? o
阅读全文
摘要:1、前缀运算符的优先级是从右到左,例如: 1 *++p; //这句话的含义是先对p进行++,再取* 2、循环 c++11新增了一种循环方式,有点和python类似,如下: 1 array<int, 5> a1 = {...}; 2 3 for(int x : a1) 4 cout << x << e
阅读全文
摘要:这节主要是介绍数组、结构体、类等概念,以及new delete内存管理。 1、数组 首先普及一下C++中字符串的概念,只有在结尾有 \0 的才叫字符串, cout 输出字符串也以空字符为标记进行结束输出。 2、输入 读取一行数据,有两个函数可以实现 1 cin.get(); 2 cin.getlin
阅读全文
摘要:1、格式化输出: 和C语言不太一样,C++格式化输出进制格式如下: 1 int a = 42; 2 int b = 42; 3 int c = 42; 4 5 cout << a << endl; 6 7 cout <<oct; //八进制 8 cout << b << endl; 9 10 cou
阅读全文
摘要:1、using namespace std; 注意一下命名空间的概念,不编译这句话,可能就要用 std::cout << std::endl 这种写作方式了。 这句话放在函数内部,只对该函数起作用,放在文件开头,则对该文件中所有函数都起作用。 另外加入使用 using std::cout; 这种方式
阅读全文