C++防止EXE文件执行时弹出cmd的方法 程序最上面添加#pragma comment( linker, “/subsystem:“windows” /entry:“mainCRTStartup”” )
Qt--常见快捷键 Alt+0:显示/隐藏侧边栏ctrl+e 松开后按2ctrl+e松开后按1ctrl+b编译执行ctrl+b+s保存并编译执行ctrl+r运行项目ctrl+/ 注释或取消注释ctrl+i 自动缩进选中的代码ctrl+shift+r批量修改变量名ctrl+f搜索并替换ctrl+单击:跳转到定义位置shift+F2声明与定义之间进行切换Alt+U:大写转小写Alt+shift+...
Qt--信号与槽 1、信号当用户或系统出发某个动作,导致某个窗口发生变化,该窗口发送一个信号,该信号调用一个 成员函数,必要时还可以附加信号。如QPushButton控件中就有clicked(void)信号2、槽普通的类成员函数,它可以使共有的、私有的、保护的可以被重载也可以被覆盖,其参数、返回值可以是任意类型,可以被直接调用与普通函数的区别就是它可以被信号触发,自动执行。如:窗口控件QWidget中默...
Qt---中文处理 注意:在Qt4.8中默认不支持utf-8因此使用中文是会出现乱码。内部编码与外部编码:Qt的应用程序的控件内部所使用的都utf-16,这叫做应用程序的内部编码,而我们通过终端,控制输入的字符串叫外部编码如果,我们需要在Qt界面中加载出中文就需要改变其内部和外部的编码。改变其内外部编码只需要加上下面四行代码即可:QTextCodec* codec = QTextCodec::codeFor...
Qt--工具 Qt环境与编译工具1、工具Qt助手:Qt参考文档,涉及了Qt中每一个类和函数,是Qt开发人员的必备手册,在终端可以通过assistant命令启动。Qt构建器:它负责对源文件、头文件 、界面文件、进行解析生成编译脚本。qmakeqmake -project 根据当前目录文件,生成项目配置文件。xxx.protectedqmake 根据xxx.pro生成Makefile脚本Qt设计师:对于...
C++中的强制转换 C++为了兼容C语言,(目标类型)原类型,依然可以使用,但C语言的强制类型转换安全性差,因此建议使用C++中的强制转换。注意:C++之父认为如果代码设计的完善,根本不需要用到强制类型转换,而C++的强制类型转换之所以设计的很复杂,是为了让程序员关注代码本身的设计,尽量少使用。C++中的强制类型转换保证没有很大的安全隐患。static_cast<目标类型>原类型:编译器会对源类...
C++中那些不得不说的类继承 1、私有继承和保护继承使用 private:方式继承父类,在父类中所有成员都会变成私有的。这种继承方式会防止父类的成员扩散使用 protected: 方式继承父类,公开的成员便保护,这种继承方式有限的防止父类成员的扩散。 禁止向上造型: 禁止向上进行类型转换(子类的指针或引用不能隐式转换成父类的指针或引用)。 要想实现多态只能以公开方式继承父类。2、多重继承在C++中,一个...
c语言--段错误总结 段错误一般分为两种:访问非法内存和数组越界1、访问非法内存1、解引用空指针int* p=NULL;printf("%d",p);2、访问含有非法值的内存。例如:访问被 register 修饰过的指针变量register int p =10;printf("%d",*p);//register是c语言32个关键字之一,会让变量直接存储在内核的寄存器中,所以不能访问它修饰过的...
小河学习日记--C++类的继承 1、共性与特性共性:表达不同类型事务之间共有的属性与行为。特性:用于刻画每种事务特有的属性和行为2、共性表示为基类(父类),个性表示为子类(派生类)。子类继承自父类基类派生出子类继承的基本语法1、继承表一个子类可以同时继承零个到多个父类,每个父类的继承方式可以相同也可以不同。class 子类:继承方式1 父类1,继承方式2 父类2{}2、继承方式public:共有继承:父...
小河学习日记----C++输入输出操作符重载 cout 是ostream 类型的对象cin 是istream类型的对象如果<</>>运算符实现为成员函数,那么调用者应该是ostream/istream,而我们无权增加标准库的代码,因此输入输出运算符只能定义为全局函数cout << 类对象<<endl;ostream& operator<<(ostream& ...
小河学习日记---C++操作符重载 什么是操作符函数在C++中针对类类型的对象的运算符。由于类肯定不支持真正的操作运算,因此编译器会将它们翻译成函数这种就叫操作符函数(运算符函数)通过编译器把运算符翻译成运算符函数,可以针对自定义的类类型可以设计它独有的运算功能。其实各种运算符已经具备了一些功能,再次定义就类似于重载。双目运算符:a+b成员函数a.operator +(b);全局函数operator +(a,b)...
小河学习日记--C与C++不同之处出 C与C++的不同之处(只讲区别,C++有而C没有的,请听下回分解)一.内存管理1.C使用的时malloc/free,malloc再分配内存时是一页一页的分配的,当使用malloc时操作系统会直接批发32页内存,所以使用malloc时,如果没有后续在堆内存上的操作了,是可以越界的。例如如:#include<stdio.h>#include<stdlib.h>int...
小河学习日记---C++ string (模仿篇) #include#include<string.h>using namespace std;class String{private:char* str;public:String(const char* str){this->str=new char[strlen(str)+1];strcpy(this->str,str);}String(voi...
小河学习日记--C++this指针 类的成员变量单独存储在每个类对象中,成员函数储存在代码段中,所有的类对象共享一份成员函数。成员函数是如何调用它的类对象?借助this指针, 类的每个成员函数都有一个隐藏的参数this指针,它指向类对象类构造函数中,也同样由this 指针,指向正在构造的对象。在类中函数对成员变量,成员函数的访问都是借助this指针。this是隐藏的,但也可以显示使用1、参数和成员一样时,使用this 可...
小河学习日记--c++拷贝函数和赋值函数 拷贝构造又称为复制构造。是一种特殊的构造函数,它是使用一个现有的对象来构造一个新的对象。只有一个引用型参数(必须是对象本身),类名(类& ){}int main(){User user;User user1=user;}如果不写编译器会自动生成拷贝构造。拷贝构造的参数应该加const 保护,但编译器并没有强制限制。拷贝构造负责把就对象中的所有数据拷贝给新创建的对象。深...
小河学习日记--C++单例模式 只能创建出一个类对象(只有一个实例)的单例模式应用:Windows系统的任务管理器Linux/Unix系统的日志系统网站的访问计数器服务端程序的连接池、线程池、数据池。获取单一对象的方法:1、定义全局:不受控制,能防君子,不能防小人。2、专门写出一个类,把这个类的构造函数设置私有,借助静态函数提供一个接口,以此来获取唯一的实例。C++如何实现单例模式:1、禁止类的外部创建对象:...
小河学习日记---C++中的字符串 1、字符串的基本用法/*字符串的基本用法主要是指字符串类对象的定义与初始化方法。*/ #include int main(int argc, const char * argv[]){// 在栈上定义了一个空的字符串对象;std::string str;// 在栈上定义了一个字符串对象,然后调用构造函数对其进行初始化。std::string str1(“Hello World!”...