
C/C++
yangcs2009
这个作者很懒,什么都没留下…
展开
-
notes for 94--110
1、Using cout, the statements can continue over multiple lines,and that the entire statement terminates with a semicolon.2、Using the Standa原创 2011-10-15 20:25:28 · 423 阅读 · 0 评论 -
找工作笔试面试那些事儿(8)---常问的CC++基础题
这一部分是C/C++程序员在面试的时候会被问到的一些题目的汇总。来源于基本笔试面试书籍,可能有一部分题比较老,但是这也算是基础中的基础,就归纳归纳放上来了。大牛们看到一笑而过就好,普通人看看要是能补上一两个模糊的知识点,也算有点进步吧。1.简述变量声明和定义的区别。 为变量分配地址和存储空间的称为定义,不分配地址的称为声明。一个变量可以在多个地方声明,但是只在一个地方定义。加转载 2014-07-27 07:30:09 · 1860 阅读 · 1 评论 -
static的含义以及其在C/C++中的区别
static关键字是C, C++中都存在的关键字. 它主要有三种使用方式, 其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同,本文以C++为准).(1)局部静态变量(2)外部静态变量/函数(3)静态数据成员/成员函数下面就这三种使用方式及注意事项分别说明一、局部静态变量在C/C++中, 局部变量按照存储形式可分为三种 auto,转载 2014-08-03 17:10:43 · 1000 阅读 · 0 评论 -
类的构造函数、析构函数与赋值函数
类的构造函数、析构函数与赋值函数 学过C++的人都说自己知道构造函数、析构函数与赋值函数。它们看似太普通,以致让人容易麻痹大意,但请你认真读完这部分内容,你会发现这些貌似简单的函数实则像没有顶盖的下水道那样危险。 每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)。对于任意一个类A,如果不想编写上述函数,C++编译转载 2014-10-04 12:53:07 · 801 阅读 · 0 评论 -
重写strcpy() 函数原型
已知strcpy函数的原型是char* strcpy(char* strDest,const char* strSrc);1.不调用库函数,实现strcpy函数2.解释为什么要返回char*;1.strcpy的实现代码char* strcpy(char* strDest,const char* strSrc){ if((strDest == NULL) || (strSrc转载 2014-10-10 20:36:16 · 814 阅读 · 0 评论 -
C++, Java和C#的编译、链接过程解析
1.1.1 摘要我们知道计算机不能直接理解高级语言,它只能理解机器语言,所以我们必须要把高级语言翻译成机器语言,这样计算机才能执行高级语言编写的程序,在接下来的博文中,我们将介绍非托管和托管语音的编译过程。1.1.2正文非托管环境的编译过程(C/C++)纯C/C++的程序通常运行在一个非托管环境中,类是由头文件(.h)和实现文件(.cpp)组成,每个类形成了一个单独的编译单元,当我转载 2014-10-26 13:09:50 · 3507 阅读 · 0 评论 -
找工作笔试面试那些事儿(4)---C++函数高级特征
C++函数的高级特征 重载(overloaded)、内联(inline)、const 和virtual是C++独有而C不具有的四种机制。其中重载和内联机制既可用于全局函数也可用于类的成员函数,const 与virtual机制仅用于类的成员函数。重载和内联是一把双刃剑,用的好可以提高效率,精简程序;而一味滥用也会影响程序的效果。这里根据笔试面试中常碰到的问题,探究一下重载和内联的优点与转载 2014-07-26 07:59:05 · 1557 阅读 · 0 评论 -
内存垃圾回收 GC
最近在公司内部做了一次关于垃圾回收的讲座,我打算用几篇文章把讲座的内容整理出来,供大家参考。在开始之前,我们有必要稍微复习一下内存分配的主要方式,大多数主流语言都支持三种内存分配方式:1. 静态分配:静态变量和全局变量的分配形式 2. 自动分配:在栈中为局部变量分配内存的方法 3. 动态分配:在堆中动态分配内存空间以存储数据的方式如何管理堆对象的生命周期,正是我们要探讨的话题。从面转载 2014-09-15 15:11:36 · 1382 阅读 · 0 评论 -
C和C++的区别
C和C++的区别:C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说转载 2014-08-03 16:02:48 · 769 阅读 · 0 评论 -
重载和覆盖
<br />重载和覆盖 收藏 <br />方法的重载(overload)和覆盖(override)<br /> <br />有的时候,类的同一种功能有多种实现方式,到底采用哪种实现方式,取决于调用者给定的参数。例如我们最常用的System.out.println()能够打印出任何数据类型的数据,它有多种实现方式。运行时,Java虚拟机先判断给定参数的类型,然后决定执行哪个println()方法。<br /> <br />重载(overload):对于类的方法(包括从父类中继承的方法),方法名相同,参数列表不转载 2011-04-07 10:39:00 · 486 阅读 · 0 评论 -
typedef和define具体的详细区别
1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如:#define PI 3.1415926程序中的:area=PI*r*r 会替换为3.1415926*r*r如果你把#define语句中的数字9 写成字母g 预处理也照样带入。2)typedef是在编译时处理的。它在自己的作转载 2014-07-20 20:46:40 · 626 阅读 · 0 评论 -
c++【codeblocks环境下】error: expected unqualified-id before 'using'问题
问题:好久没有写代码了,开始写一个简单的程序就出现了上述错误,记录下来,算是成长笔录吧。其实就是类声明后面没有加分号导致的。类声明的时候没有加分号,还可能导致一个错误错误:一个声明指定了多个类型解决办法:分别检查包含进来的文件,类声明,结构体声明后面有没有加分号。结果是GradeBook类未添加分号所致。原创 2012-11-03 16:29:52 · 4994 阅读 · 0 评论 -
gets函数
从stdin流中读取字符串,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。换行符不作为读取串的内容,读取的换行符被转换为null值,并由此来结束字符串。函数名称 gets 包含头文件 string.h 功能 从stdin流中读取字符串,直至接受到换行符或EOF时停止,并将读取的结果转载 2012-02-01 11:43:39 · 1246 阅读 · 0 评论 -
困扰了一天的 codeblock 无法处理debugger 断点问题
如图,按照上述步骤依次修改后仍无法正常debugger 单步运行,一个问题困扰了一天,终于在傍晚看到一篇英文帖子时,恍然大悟,是在选择引入configuration时的错误。仅选择Win32 Debug 选项。修改后可以正常调试原创 2012-02-04 17:21:10 · 3519 阅读 · 3 评论 -
P85--94 notes
1、In the function declaration,the argument identifiers are optional. In the definitions,they are required.2、A #include may name a file in原创 2011-10-13 19:41:54 · 410 阅读 · 0 评论 -
1026 notes for thinking in c++(127-137)
1、introduction to operators. Precedence as well as auto increment and decrement.2、Introduction to data types which include built-in type and user-defined types. Basic types and Boolean type.3、Spec原创 2011-10-26 19:15:08 · 452 阅读 · 0 评论 -
memset()
memsetvoid * memset ( void * ptr, int value, size_t num );Fill block of memorySets the first num bytes of the block of memory pointed byptr to the specifiedvalue (interpreted as an unsigned ch原创 2012-02-06 11:18:02 · 683 阅读 · 0 评论 -
C++ vector基础
在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结。1 基本操作(1)头文件#include.(2)vector 型变量的声明以及初始化 vector a ; //声明一个int型向量a vector a(10) ; //声明一个初始大小为1转载 2015-10-09 15:10:45 · 596 阅读 · 0 评论