汉扬编程 C语言入门 C++程序设计教程 面向对象程序设计

C++程序设计教程 面向对象程序设计

C++与C不同,它是一个面向对象的编程语言。是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。C++ 被认为是一种中级语言,它综合了高级语言和低级语言的特点。

C++程序设计教程 面向对象程序设计

C++ 完全支持面向对象的程序设计,包括面向对象开发的四大特性:

封装

抽象

继承

多态

标准的 C++ 由三个重要部分组成:

核心语言,提供了所有构件块,包括变量、数据类型和常量,等等。

C++ 标准库,提供了大量的函数,用于操作文件、字符串等。

标准模板库(STL),提供了大量的方法,用于操作数据结构等。

C++ 程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。现在让我们简要地看一下什么是类、对象,方法、即时变量。

对象 – 对象具有状态和行为。例如:一只狗的状态 – 颜色、名称、品种,行为 – 摇动、叫唤、吃。对象是类的实例。

类 – 类可以定义为描述对象行为/状态的模板/蓝图。

方法 – 从基本上说,一个方法表示一种行为。一个类可以包含多个方法。可以在方法中写入逻辑、操作数据以及执行所有的动作。

即时变量 – 每个对象都有其独特的即时变量。对象的状态是由这些即时变量的值创建的。

数据类型

基本的内置类型

C++ 为程序员提供了种类丰富的内置数据类型和用户自定义的数据类型。下表列出了七种基本的 C++ 数据类型:

类型关键字

布尔型bool

字符型char

整型int

浮点型float

双浮点型double

无类型void

宽字符型

wchar_t

其实 wchar_t 是这样来的:

typedef wchar_t short int;

所以 wchar_t 实际上的空间是和 short int 一样。

一些基本类型可以使用一个或多个类型修饰符进行修饰:

signed

unsigned

short

long

下表显示了各种变量类型在内存中存储值时需要占用的内存,以及该类型的变量所能存储的最大值和最小值。

注意:不同系统会有所差异。

类型位范围

char1 个字节-128 到 127 或者 0 到 255

unsigned char1 个字节0 到 255

signed char1 个字节-128 到 127

int4 个字节-2147483648 到 2147483647

unsigned int4 个字节0 到 4294967295

signed int4 个字节-2147483648 到 2147483647

short int2 个字节-32768 到 32767

unsigned short int2 个字节0 到 65,535

signed short int2 个字节-32768 到 32767

long int8 个字节-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807

signed long int8 个字节-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807

unsigned long int8 个字节0 to 18,446,744,073,709,551,615

float4 个字节+/- 3.4e +/- 38 (~7 个数字)

double8 个字节+/- 1.7e +/- 308 (~15 个数字)

long double16 个字节+/- 1.7e +/- 308 (~15 个数字)

wchar_t2 或 4 个字节1 个宽字符

从上表可得知,变量的大小会根据编译器和所使用的电脑而有所不同。

下面实例会输出您电脑上各种数据类型的大小。

实例

#include<iostream>

#include<string>

#include <limits>

using namespace std;

int main()

{

cout << "type: \\t\\t" << "************size**************"<< endl;

cout << "bool: \\t\\t" << "所占字节数:" << sizeof(bool);

cout << "\\t最大值:" << (numeric_limits<bool>::max)();

cout << "\\t\\t最小值:" << (numeric_limits<bool>::min)() << endl;

cout << "char: \\t\\t" << "所占字节数:" << sizeof(char);

cout << "\\t最大值:" << (numeric_limits<char>::max)();

cout << "\\t\\t最小值:" << (numeric_limits<char>::min)() << endl;

cout << "signed char: \\t" << "所占字节数:" << sizeof(signed char);

cout << "\\t最大值:" << (numeric_limits<signed char>::max)();

cout << "\\t\\t最小值:" << (numeric_limits<signed char>::min)() << endl;

cout << "unsigned char: \\t" << "所占字节数:" << sizeof(unsigned char);

cout << "\\t最大值:" << (numeric_limits<unsigned char>::max)();

cout << "\\t\\t最小值:" << (numeric_limits<unsigned char>::min)() << endl;

cout << "wchar_t: \\t" << "所占字节数:" << sizeof(wchar_t);

cout << "\\t最大值:" << (numeric_limits<wchar_t>::max)();

cout << "\\t\\t最小值:" << (numeric_limits<wchar_t>::min)() << endl;

cout << "short: \\t\\t" << "所占字节数:" << sizeof(short);

cout << "\\t最大值:" << (numeric_limits<short>::max)();

cout << "\\t\\t最小值:" << (numeric_limits<short>::min)() << endl;

cout << "int: \\t\\t" << "所占字节数:" << sizeof(int);

cout << "\\t最大值:" << (numeric_limits<int>::max)();

cout << "\\t最小值:" << (numeric_limits<int>::min)() << endl;

cout << "unsigned: \\t" << "所占字节数:" << sizeof(unsigned);

cout << "\\t最大值:" << (numeric_limits<unsigned>::max)();

cout << "\\t最小值:" << (numeric_limits<unsigned>::min)() << endl;

cout << "long: \\t\\t" << "所占字节数:" << sizeof(long);

cout << "\\t最大值:" << (numeric_limits<long>::max)();

cout << "\\t最小值:" << (numeric_limits<long>::min)() << endl;

cout << "unsigned long: \\t" << "所占字节数:" << sizeof(unsigned long);

cout << "\\t最大值:" << (numeric_limits<unsigned long>::max)();

cout << "\\t最小值:" << (numeric_limits<unsigned long>::min)() << endl;

cout << "double: \\t" << "所占字节数:" << sizeof(double);

cout << "\\t最大值:" << (numeric_limits<double>::max)();

cout << "\\t最小值:" << (numeric_limits<double>::min)() << endl;

cout << "long double: \\t" << "所占字节数:" << sizeof(long double);

cout << "\\t最大值:" << (numeric_limits<long double>::max)();

cout << "\\t最小值:" << (numeric_limits<long double>::min)() << endl;

cout << "float: \\t\\t" << "所占字节数:" << sizeof(float);

cout << "\\t最大值:" << (numeric_limits<float>::max)();

cout << "\\t最小值:" << (numeric_limits<float>::min)() << endl;

cout << "size_t: \\t" << "所占字节数:" << sizeof(size_t);

cout << "\\t最大值:" << (numeric_limits<size_t>::max)();

cout << "\\t最小值:" << (numeric_limits<size_t>::min)() << endl;

cout << "string: \\t" << "所占字节数:" << sizeof(string) << endl;

// << "\\t最大值:" << (numeric_limits<s

本文来自网络,不代表汉扬编程立场,转载请注明出处:http://www.hyzlch.com/cjia/6723.html

一种基于面向对象思想的c程序设计方法及系统

向高一级看齐 实拍雪铁龙云逸C4 350THP

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部