C++
仲夏夜之梦helloWorld
百无一用是书生,
万般皆下品惟有读书高。
展开
-
怎么解决VS运行程序控制台一闪而过
在程序末尾添加语句:system("pause"); 加上这句后,控制台显示运行结果后会显示“请按任意键继续”#include #include using namespace std;int main(){ cout<<sizeof(int)<<endl; system("pause"); return 0 ;}原创 2016-12-13 10:53:43 · 622 阅读 · 0 评论 -
子类的构造函数
基类的成员函数可以被继承,可以通过派生类的对象访问,但这仅仅指的是普通的成员函数,类的构造函数不能被继承。构造函数不能被继承是有道理的,因为即使继承了,它的名字和派生类的名字也不一样,不能成为派生类的构造函数,当然更不能成为普通的成员函数。在设计派生类时,对继承过来的成员变量的初始化工作也要由派生类的构造函数完成,但是大部分基类都有 private 属性的成员变量,它们在派生类中无转载 2017-09-01 17:24:50 · 3060 阅读 · 0 评论 -
C++中子类构造函数写法总结
构造函数与父类的其它成员(成员变量和成员方法)不同,它不能被子类继承。因此,在创建子类对象时,为了初始化从父类中继承来的成员变量,编译器需要调用其父类的构造函数。如果子类的构造函数没有显示地调用父类的构造函数,则默认调用父类的无参构造函数,至于什么事显式调用,在下面会详细说明!关于子类中构造函数的构造原则,总结如下,欢迎大家指导与批评。 1.父类没有声明构造函数转载 2017-09-01 16:44:25 · 1214 阅读 · 0 评论 -
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
总结了一下,主要有以下原因:1. (此情况经常出现在大型工程项目中)如果存在两个类的头文件a.h和b.h,在a.h中有这样的语句:#include "b.h",在b.h文件中有这样的语句:#include "a.h" 且在一个类中有另一个类的对象时 那么就会出现这样的错误。2. 没有包含要定义的类的头文件。3.项目中少加了宏定义,导致头文件重复定转载 2017-09-01 15:36:41 · 3688 阅读 · 0 评论 -
无法访问 private 成员(在“std::basic_ios<_Elem,_Traits>”类中声明
error C2248: “std::basic_ios::basic_ios”: 无法访问 private 成员(在“std::basic_ios”类中声明)问题解决原因好像是流对象是不允许复制,所以在传给函数作为参数是应该传入引用,这样就没有问题了ostream& operator<<(ostream out , myVector v){ out<<"("<<v.x<<","<<v转载 2017-09-01 11:21:02 · 1596 阅读 · 0 评论 -
四种强制类型转换的总结(const_cast、static_cast、dynamic_cast、reinterpreter_cast)
C风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是: TYPE b = (TYPE)a C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用。 const_cast,字面上理解就是去const属性。 st转载 2017-09-07 19:23:53 · 372 阅读 · 0 评论 -
fatal error LNK1123: 转换到 COFF 期间失败
单击菜单栏中的项目-属性,3然后,点击配置属性,清单工具,输入输出,嵌入式菜单,将是改成否,点击确定保存。然后重新编译程序,就会发现程序可以顺利执行了。转载 2016-12-13 10:56:00 · 200 阅读 · 0 评论 -
VS2010全部快捷键
Ctrl+E,D ----格式化全部代码Ctrl+E,F ----格式化选中的代码CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译CTRL + O 打开文件CTRL + SHIFT + O打开项目 CTRL + SHIFT + C显示类视图窗口 F4 显示属性窗口SHIFT + F4显示项目属性窗口CTRL + SHIFT + E显示资转载 2016-12-17 16:17:02 · 826 阅读 · 0 评论 -
VS注释与取消注释快捷键
注释: 先CTRL+K,然后CTRL+C取消注释: 先CTRL+K,然后CTRL+U原创 2016-12-17 16:15:39 · 346 阅读 · 0 评论 -
heap corruption detected: after normal block
最近写了点C++的代码,其中也出现过很多奇怪的错误,heap corruption detected就是其中之一,而且这种错误很容易出现,一般出现该错误,在debug中都有大致如下的错误信息:heap corruption detected:after normal block(#xxx) at 0x xxxxxxxxcrt detected that the applic转载 2016-12-17 15:44:59 · 365 阅读 · 0 评论 -
#if _MSC_VER > 1000 #pragma once #endif 作用解释
#if _MSC_VER > 1000#pragma once#endif解释:这是微软的预编译控制。 在_MSC_VER较小时,它对一些东西的支持与新版不同 _MSC_VER分解如下: MS:Microsoft(微软)的简写 C:MSC就是Microsoft出的C编译器。 VER:Version(版本)的简写。 全部加在一起就是:Microsoft转载 2017-09-12 08:45:03 · 804 阅读 · 0 评论