C++ 学习
C++知识点滴
快乐出发并坚持
贵有恒,何必三更起五更勤;最无益,只怕一日曝十日寒
展开
-
c++ 宏定义中#, ##, #@的含义
#表示:对应变量字符串化,即加双引号 连接符#@:它将单字符标记符变换为单字符,即加单引号##表示:把宏参数名与宏定义代码序列中的标识符连接在一起,形成一个新的标识符例如:#define A(x) #@x //此处x仅限于单个字符则A(m)字面量表示 'm', 而A(abc),则无效#define B(x) #x则B(m)字面量表示 "...原创 2020-04-09 11:46:02 · 499 阅读 · 0 评论 -
c++ 关于前向引用的错误使用问题
今天在调试一个demo 程序:#include <stdlib.h>#include <stdio.h>#include <math.h>class Result;class MathCallBack{ int ops1,ops2; int result;public: void Add(int a,in...原创 2020-04-07 16:51:21 · 3280 阅读 · 0 评论 -
C++之Lambda表达式
1. 概述C++ 11 中的 Lambda 表达式用于定义并创建匿名的函数对象,以简化编程工作。Lambda 的语法形式如下:[函数对象参数] (操作符重载函数参数) mutable 或 exception 声明 -> 返回值类型 {函数体}可以看到,Lambda 主要分为五个部分:[函数对象参数]、(操作符重载函数参数)、mutable 或 exception 声明、-&g...转载 2019-12-25 09:42:15 · 88 阅读 · 0 评论 -
C++中值传递和引用传递的区别
C++中参数的传递方式:1.值传递调用时,将实参的值传递对应的形参,即为值传递。由于形参有自己独立的存储空间,又作为函数的局部变量使用,因此在函数中对任何形参值得修改都不会改变实参变量的值。简单的看一个例子:编译后,输出结果如下所示:从上图可以看出,主函数声明了两个全局变量a,b并对其赋值1,2;通过函数Swp()函数调用之后,在函数内部将a和b的值交换了,使得函数内,a...转载 2019-12-25 10:14:11 · 307 阅读 · 0 评论