Home » C++学习

一个简单的C++计算器

最简单的加法计算器功能,主要用于熟悉C++控件的使用。 1.先使用Visual C++ 创建一个MFC应用程序,对话框应用 2.在图形界面上按下面的样子画好界面 3.双击计算按钮,输入计算功能的代码 4.测试,好用,没有加校验,输入非数字后计算不出结果来 5.我们通过输入框去绑定成员属性的方式增加校验功能 代码变成

浏览更多 »

CPP学习笔记–09.Visual C++基础

开发环境 早期的软件开发基于命令行(command line)模式,调用各种命令完成代码的编译(compile)、连接(link)、运行(execute)及环境的配置(config)等,操作复杂且不直观。Visual C++提供可视化的开发界面,所有操作均可在开发环境中完成,极大提高了软件开发的效率,工欲善其事,必先利其器,熟练操作开发平台是学习Visual C++的第一步。在Visual C++中创建一个桌面程序,有Win32 API和MFC两种方式。API方式直接调用Windows API函…

浏览更多 »

CPP学习笔记–08.C++面向对象

类的定义 析构函数 函数名为~Rect() 内联函数 在使用时会自动替换成实现代码,减少函数调用带来的额外开销。 static成员 static(静态)关键字在不同场合具有不同的意义,也是常混淆用途的一个关键字(keyword)。在C语言中,static有两层含义,若在函数外用static修饰全局变量和函数,表示具有文件作用域,只能在本文件中可用,不能在其他文件中使用。 友元 类的私有成员一般情况下在类外不可访问,但有时候需要在类外访问,可使用friend关键字,在被访问类中声明为friend的…

浏览更多 »

CPP学习笔记–06.标准IO库

面向对象的标准库 标准库头文件中有iostream(基础IO库)、fstream(文件读写库)、sstream(字符串读写库)。其继承关系图为: 条件状态 IO标准库的条件状态 状态 描述 strm::iostate 机器相关的整形名,由各个iostream类定义,用于定义条件状态 strm::badbit strm:iostate类型的值,用于标记被破坏的流 strm::failbit strm:iostate类型的值,用于指出失败的操作 strm::eofbit strm:iostate类型…

浏览更多 »

CPP学习笔记–05.函数

函数声明 函数必须在声明之后才能使用,可以在头文件中对函数进行声明。C++函数在声明时可以指定默认值。 内联函数 将函数指定为内联函数,则在编译时,编译器将它在程序中的调用点上“内联地”展开。从而减少函数调用产生的额外开销。 类的成员函数 在类外定义成员函数 构造函数 重载函数 与Java定义相同,不再赘述。 指向函数的指针 函数指针是指指向函数而非指向对象的指针,和其他指针一样,函数指针也指向某个特定的类型,函数的类型由其返回类型以及形参表确定,而与函数名无关。 这个语句将pf声明为指向函数的…

浏览更多 »

CPP学习笔记–04.表达式和语句

特殊操作符和表达式 箭头操作符 箭头操作符(->)用于获取类类型对象的成员。例:someObj->getName(); sizeof 操作符 sizeof 操作符用返回一个对象或类型名的长度。例:int sz = sizeof(ok); new 和 delete 表达式 new 表达式返回指向新创建对象的指针。 delete 语句用于释放指针所指向的地址空间。delete必须用于通过new方式分配的内存地址上。 语句 goto 语句 goto 语句提供了无条件跳转,实现从goto语句…

浏览更多 »

CPP学习笔记–03.数组和指针

数组 C++中的数组比较简单,跟Java中基本一样,不再赘述,后面发现有独特的用法的话再来补充。 指针 指针用于指向对象。 其中&符号为取地址操作符。获取的该对象的存储地址。C++语言使用*符号把一个标识符生命为指针。 或者 未初始化的指针是无效的,若指针指向0值,则表示它不指向任何对象。viod* 指针可以保存任何类型的对象的指针。 指针和引用的区别: 虽然指针和引用都可以间接访问某一个值,但它们之间有两个重要的区别: 引用总是指向某个对象,定义引用时没有初始化是错误的。 赋值行为的差…

浏览更多 »

CPP学习笔记–02.C++标准库

using 命名空间 std::cout 其中:: 叫做作用域操作符。他的含义是右操作数的名字可以在左操作数的作用域中找到。使用using 声明和免去繁琐的std::,直接使用cout. 每个名字都需要有一个using声明。在头文件中不能使用using。 string 类型 string 类型的构造函数: 表达式 含义 string s1; 默认构造函数,s1为空字符串。 string s2(s1); 将s2初始化为s1的副本。 string s3(“str”); 将s3初始化为某字符串。 st…

浏览更多 »

CPP学习笔记–01.变量和基本类型

基本数据类型 C++的基本数据类型 类型 含义 最小存储空间 bool 布尔型 – char 字符型 8位 wchar_t 宽字符型 16位 short 短整型 16位 int 整形 16位 long 长整形 32位 float 单精度浮点型 6位有效数字 double 双精度浮点型 10位有效数字 long double 扩展精度浮点型 10位有效数字 signed 和 unsigned 除bool类型外,整型可以是带符号的(signed)也可以是(unsigned),顾名思义,带…

浏览更多 »

CPP学习笔记–00.引言和目录

引言 从大学毕业参加工作开始一直做JavaWeb开发,目前已有10年,除了在大学期间学过C语言之外,基本没接触过C系语言了,但在工作过程中发现很多需求需要使用C++开发,熟悉C++能大大提高自身水平。之前也尝试过很多次,但大多坚持到指针那部分就放弃了,这次再次挑战一下。 大概的学习内容目录 C++基础语法 面向对象编程 IDE使用(VS2015) Windows编程基础 MFC或QT 教材 C++ Primer 第四版 网络视频教程 其他 计划本次基础部分在ubuntu上以vi编辑器进行练习。后…

浏览更多 »