![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 69
hu_hailin
记录、总结自己的学习过程和一些学习中产生的想法
展开
-
条件运算符嵌套
条件运算符(?:)都知道就不细说了,最简单也是最常用的例子:n = (a > b) ? a : b; 在C++ primer plus第六版180页看到了一个例子,如下所示: const char x[2] [20] = {"Jason","at your services\n"} const char * y = "Quillstone";原创 2015-08-10 15:52:46 · 8010 阅读 · 1 评论 -
C++的继承与派生
网上看的文章啰里啰嗦,于是自己总结一个放这里看。继承是从子类的角度讲的,派生是从基类的角度讲的,其实是一回事。 先说明3个访问控制关键字,对应class A的成员函数:(可将class A的派生类视为子女,同目录下的其他classes视为朋友,不同目录下的其他classes视为其他人)public:子女、朋友以及其他人可以访问。protected:子女、朋友可以访问原创 2015-08-18 14:20:31 · 406 阅读 · 0 评论 -
extern解疑
写程序时想让我在a.c源文件中定义的变量在b.c中可用,于是想到了extern。由于只是在很久之前于c primer plus上看过,不知道心里想的用法对不对,于是上网找了些文章看看。发现真的和自己印象中那种用法不一样。 先不说extern "C"(见注释①)。 用法: 1、在a.c中定义int n,在b.c中使用extern int n声明就原创 2015-08-05 10:08:05 · 386 阅读 · 0 评论 -
::和.的区别
::(作用域运算符)和.(成员运算符)的区别这是在看::运算符的作用时产生的疑问。::有三个作用:1、全局作用2、类作用3、名称空间1和3不多说,在2中,其说明是:作用域符号::的前面一般是类名称,后面一般是该类的成员名称,C++为了避免不同的类有名称相同的成员而采用作用域的方式进行区分 如:A,B表示两个类,在A,B中都有成员member。那么 A::原创 2015-08-21 11:00:41 · 7362 阅读 · 0 评论 -
段错误
编译的时候产生了一个段错误,网上查了下找到个不错的方法,在makefile里的编译命令g++后面加上-g -rdynamic参数。方法很简单,用gdb调试生成的可执行文件,然后输入run运行,就能看到错误信息,有两行: Program received signal SIGSEGV, Segmentation fault. 0x006cad19 in vfprintf () f原创 2015-11-11 16:59:17 · 2122 阅读 · 0 评论