关闭

sizeof和strlen的区别总结

一、sizeof的概念    sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作 符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数 的存储大小由操作数的类型决定。  二、sizeof的使用方法    1、用于数据类型    sizeof使用形式:sizeof(type)    数据类型必须...
阅读(138) 评论(0)

C的可变参数

C的可变参数 1 使用: 一直以来习惯了使用printf函数,但是对于可变参数没有深入研究过,觉得可变参数是一个神奇的技术^0^。。。 工作闲下来的时候,想研究研究看可变参数的使用和原理。 目前C提供的可变参数的申明为 void function(const char *format, ...); 这样就可以在function中使用可变参数 C提供了几个宏用于使用可变参数 va_l...
阅读(170) 评论(0)

gcc 编译多个源文件

一. 常用编译命令选项 假设源程序文件名为test.c。 1. 无选项编译链接 用法:#gcc test.c 作用:将test.c预处理、汇编、编译并链接形成可执行文件。这里未指定输出文件,默认输出为a.out。 2. 选项 -o 用法:#gcc test.c -o test 作用:将test.c预处理、汇编、编译并链接形成可执行文件test。-o选项用来指定输出文件的文...
阅读(100) 评论(0)

C++类构造函数初始化列表

构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。例如: class CExample { public:    int a;    float b;    //构造函数初始化列表     CExample(): a(0),b(8.8)    {}    //构造函数内部赋值     CExample...
阅读(306) 评论(0)

C++基础:多态的剖析(重载、覆盖、隐藏)

C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家详细介绍其中C++多态性的一些基本知识,以方便大家在学习过程中对此能够有一个充分的掌握。   多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polymorphisn),字面意思多种形状。   C++多态性是通过虚函数来实现的,虚函数允许子类重新定...
阅读(179) 评论(0)

C++基础:多态 虚函数

面向对象程序设计中的多态性是指向不同的对象发送同一个消息,不同对象对应同一消息产生不同行为。在程序中消息就是调用函数,不同的行为就是指不同的实现方法,即执行不同的函数体。也可以这样说就是实现了“一个接口,多种方法”。   从实现的角度来讲,多态可以分为两类:编译时的多态性和运行时的多态性。前者是通过静态联编来实现的,比如C++中通过函数的重载和运算符的重载。后者则是通过动态联编来实现的,在C++...
阅读(168) 评论(0)

C++基础:继承与派生(构造 析构函数 显式访问)

1.派生类如何构造: 对于简单的派生类,即只有一个基类,且直接派生(多继承将在后续几节中做详细讲解),来讲,如果基类的构造函数没有参数,或者没有显式定义构造函数,那么派生类可以不向基类传递参数,甚至可以不定义构造函数。但是一旦基类含有带参数的构造函数时,派生类必须定义构造函数,并把参数传递给基类构造函数。其一般格式:   派生类名(参数总表)::基类名(参数子表)   {     派生类新...
阅读(220) 评论(0)

C++基础:继承与派生(声明 继承方式 访问规则)

继承是面向对象程序设计中的重要特性,是软件复用的一种形式。其实继承和派生就是同一种概念的不同说法罢了,通常我们说子类继承父类,父类派生出子类。先讲一下C++中派生与继承的基本概念,它是之后学习派生类的构造与析构,以及多重继承等的基础。   1.派生类的声明   声明一个派生类的一般格式:   class 派生类名:[继承方式] 基类名   {      派生类新增的数据成员和成员函数...
阅读(249) 评论(0)

c++ string类 总结

标准C++中的string类 标准C++中提供的string类得功能是非常强大的,一般都能满足我们开发项目时使用。 要想使用标准C++中string类,必须要包含: #include // 注意是,不是 using  std::string; using  std::wstring; 或 using namespace std;   string类的构造函数: stri...
阅读(312) 评论(0)

C++基础:类与对象(对象调用成员函数 this指针)

1.一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的时候也是加上this的,它作为非静态成员函数的隐含形参,对各成员的访问均通过this进行。 this指针的使用: 一种情况就是...
阅读(3783) 评论(1)

C++基础:类与对象(构造 析构 赋值 拷贝构造)

C++中类的构造函数与析构函数,对象的赋值与复制,拷贝构造函数等。 和上一节一样,还是用Kid类来说明   建立对象并初始化:Kid kid(10,"rookie_j","男");另外一种使用new运算符动态建立对象:Kid *ptr=new Kid(10,"rookie_j","男");通过指针变量ptr来访问:ptr->showKid();当我们用new建立对象时,当不再使用它时,要用d...
阅读(299) 评论(0)

C++基础:类与对象(创建 成员 访问)

C中的结构体存在缺点: 1.函数中的任意赋值语句都可以访问结构体中的成员,但在现实生活中并不是什么数据都可以被随意访问的,因此C语言中的结构体的数据是不安全的; 2.结构体中的数据和对该数据的操作是分离的,并不是一个被封装起来的整体,因此使程序难以重用,影响了软件生产效率;于是C++中引入了类的概念。 C++中规定如果没有对类的成员加私有private,保护protected,或公有publ...
阅读(317) 评论(0)

C++中static extern关键字及全局变量的辨析

全局变量,就是指那些定义在函数或类之外的变量,它可作为多个类或函数都需要共同使用的变量。 (1)全局变量会被自动初始化,函数中的变量不会被自动初始化,类中定义的那些成员变量(内建)也不会自动初始化。那么这里有一个疑问,为什么要这样设置?并且为什么,进程内存区中,分为初始化了的全局变量和静态变量,和未初始化的全局和静态变量。 (2)全局变量如果加上static关键字,事情将会变得很奇妙。 我们...
阅读(1810) 评论(0)

C/C++中extern关键字详解

C/C++中extern关键字详解 1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。       也就是说extern有两个作用,第一个,当它与"C"一起连用时,如: extern "C" void fun(int a, int b);则告诉编译器在编译fun这个函...
阅读(210) 评论(0)

C++ inline 内联函数

人们经常会讨论的2种观点: 一.inline 应该在函数声明之前(在定义之前是否有inline对函数是否内联不影响) http://www.pconline.com.cn/pcedu/empolder/gj/c/0503/563879.html http://www.qqread.com/cpp/k352943300.html http://www.sf.org.cn/Article/ba...
阅读(185) 评论(0)
25条 共2页1 2 下一页 尾页
    个人资料
    • 访问:11901次
    • 积分:305
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:15篇
    • 译文:0篇
    • 评论:2条
    文章存档
    最新评论