
C/Cpp
文章平均质量分 50
C/C++相关
ljfeng123
每天进步一..
展开
-
只有静态常量整型数据成员才可以在类中初始化
原文出自:http://www.2cto.com/kf/201311/258210.html 类定义中,数据成员的初始化,只有静态的常量整形数据成员才可以在类定义中初始化,如 static const int c=2; 常整型静态数据成员可以在类中直接初始化,而常实型静态数据成员不可以 class circle{int a; // 普通变量,不能在类中初始化转载 2014-03-09 18:49:33 · 18449 阅读 · 3 评论 -
new一个对象时加是否加括号的问题
假如已经定义了类class A;A a = new A;A a = new A();区别是:对于自定义类型,调用的都是默认构造函数,没区别的。只不过对于内建类型不太一样,加了括号会做默认值初值化,比如:int* p = new int;//p指向的int值是不确定的;int* q = new int();//q指向的int值为0。原创 2014-03-26 02:49:16 · 903 阅读 · 0 评论 -
windows上安装MinGW 4.4、Qt library 4.8.4和Qt Creator
转自:http://blog.youkuaiyun.com/makenothing/article/details/9794893 和 http://blog.youkuaiyun.com/vah101/article/details/8271050 先了解Qt: Qt一直以来,分为商业、开源两个版本,商业版本为用户提供了二级制的动态库,直接安装既可以使用,但是需要转载 2014-03-26 01:57:19 · 1213 阅读 · 0 评论 -
static关键字用法
像在VB,C#,C,C++,Java中我们可以看到static作为关键字和函数出现,在其他的高级计算机语言如FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、PROLOG、Ada等语言中也是有出现的,只是有着不同的作用,对于其具体作用,读者有需要的时候是可以具体查阅的鉴于时间问题今天我就不一一罗列了。C++中简介C#与C转载 2014-03-24 00:45:09 · 1896 阅读 · 0 评论 -
C++面试题集结(资料来自网上)
1.C++中struct和class的区别 a.成员的默认访问权限不同,struct成员默认是public权限,class成员默认是private权限。 b.默认继承权限不同。如果不明确指定继承方式,struct的默认继承方式是public,而class的默认继承方式是private。 2.如何判断一段程序是由c编译程序还是由c++编译程序编译的? #ifde原创 2014-04-02 21:43:59 · 676 阅读 · 0 评论 -
字符串的size()和sizeof()
一.字符串的size()函数返回字符串的长度,不包括结束符'\0'; 如:string s = “abc";或string s = "abc\0"; cout 输出的都是: s.size()=3; //不包括‘\0'; char ps[] = {'a','b','c','d','\0'};原创 2014-03-07 18:41:32 · 11196 阅读 · 0 评论 -
内联函数(inline)
(一)inline函数(摘自C++ Primer的第三版)在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联。 inline int min(int first, int secend) {/****/}; inline 函数对编译器而言必须是可见的,以便它能够在调用点内展开该函数。与非inline函数不同的是,inline函数必须在调用转载 2014-03-19 23:56:21 · 757 阅读 · 0 评论 -
delete 和 delete []的用法(转)经典啊!
源自:http://thomaschan1987.blog.163.com/blog/static/216590179201011211350443/发现有人在问C++中的delete和delete[]的使用方法,为了方便新手学习,写了这篇文章,大家可以看看,我们一来看下面的例子,通过例子的学习了解C++中的delete和delete[]的使用方法 发现有人在问C++中转载 2014-03-31 01:29:27 · 1734 阅读 · 0 评论 -
关于makefile
Makefile 的规则格式是这样的1234 target ... : prerequisites ... command ... ...比如 lz 要把一个 hello.cpp 文件编译成 hello转载 2014-03-30 21:19:54 · 559 阅读 · 0 评论 -
linux下多线程编程问题收集
如果引用了pthread.h头文件,则在链接程序的时候要加上-lpthread选项(g++ -o -lpthread),如: //test.cpp 1 #include 2 3 #include 4 #include 5 6 using namespace std; 7原创 2014-03-30 20:19:56 · 635 阅读 · 0 评论 -
const使用
(1)const用于定义常量:const定义的常量编译器可以对其进行数据静态类型安全检查。 (2)const修饰函数形式参数:当输入参数为用户自定义类型和抽象数据类型时,应该将“值传递”改为“const &传递”,可以提高效率。比较下面两段代码: void f(A a); void f(A const &a); 第一个函数效率低原创 2014-03-14 02:38:30 · 713 阅读 · 0 评论 -
strcpy和strncpy的区别
第一种情况:1234char* p="how are you ?";char name[20]="ABCDEFGHIJKLMNOPQRS";strcpy(name,p); //name改变为"how are you ? "====>正确!strncpy(name,p, sizeof(name));//name改变为"how are you ?转载 2014-03-14 00:22:52 · 580 阅读 · 0 评论 -
不用库函数,实现char* strcpy(char* strDes,const char* strSrc)函数
1.strcpy的实现代码char * strcpy(char * strDest,const char* strSrc) { char * strDestCopy=strDest; //[3] if ((strDest==NULL)||(strSrc==NULL)) //[1] { throw "Invalid argument(s)"; //[转载 2014-03-13 18:56:51 · 899 阅读 · 0 评论 -
类型转换
数据类型从低到高依次是:char,short,int,unsigned,long,unsigned long,float,double;精度越来越高 1.隐含转换(自动转换) 在算术运算和关系运算中,参与运算的操作数类型不一致,就会产生隐含转换,通常是将低类型的数据转换成高类型的数据。 隐含转换是从低精确度转换到高精确度,没有数据损失,所以是安全的转换。原创 2014-03-08 01:08:51 · 729 阅读 · 0 评论 -
静态局部变量初始化问题
在C中对静态变量初始化必须使用常量,在C++中却可以使用变量初始化静态变量。C里面只允许静态初始化, C++允许动态初始化,可以参考C++标准3.6.2节静态变量没有初始化时,与全局变量一样,默认值为0;非静态的局部变量没有初始化时,该变量的值不确定,必须要赋值后才可以安全使用,所以最好初始化。 参考文章:http://www.myexception.cn/c/1402原创 2014-03-13 03:14:10 · 3922 阅读 · 0 评论 -
linux下如何用GDB调试c++程序
转自:http://blog.youkuaiyun.com/wfdtxz/article/details/7368357 GDB 是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是这个道理。转载 2014-03-30 19:25:14 · 718 阅读 · 0 评论