小话c++
文章平均质量分 50
以问答的形式由现象慢慢深入内部原理,主要以相应的开发工具和汇编来验证或者实现特定功能,完美诠释c++的本质
程序员小迷
从前有只猫,它不去抓老鼠,而是想吃面包店的面包,最终它变成了人.
展开
-
语言的智能指针
C语言完全靠人工,C#/Java/Python等更高级语言有GC,只有C++还在研究复杂的指针技术。这些指针技术听起来似乎已经没太大意义,但对于C++语言而言,意义深远,因为它真的再让程序员控制内存和对象释放。助您在编程路上越走越好!原创 2024-09-09 19:19:56 · 498 阅读 · 0 评论 -
运算符重载
C++玩运算符重载很花,一些高级编程语言都支持重载,简洁清晰有效。原创 2024-09-08 10:22:54 · 333 阅读 · 0 评论 -
语言中的内联
爸爸为了培养孩子的独立能力,会把任务交给孩子并观察孩子做的结果。但有的时候,妈妈看到孩子因为完不成而伤心难过时,会毫不犹豫二话不说帮孩子的事情做掉。这也是内联。原创 2024-09-07 11:35:05 · 328 阅读 · 0 评论 -
反射: 获取变量类型
更高级的编程语言,提供反射、解释机制,获取对象类型非常方便,因为运行时保存有对象的全部信息,也包括类型,而对于编译型语言而言,变量类型要靠编译期或构造/依赖类型某个存储类型的结构。原创 2024-09-05 19:12:03 · 312 阅读 · 0 评论 -
编译器和语言标准
编译器随着编程语言新标准而不断更新,历史的长河可能会淹没很多故事,但必要的时候,回忆起编译器版本和编程语言标准,不失一件有趣的事情。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!原创 2024-09-04 19:21:15 · 594 阅读 · 0 评论 -
C语言问答进阶--6、函数(1)
A:现在我们将研究函数这个概念。其实这个概念很简单,和中学的时候学的y=f(x)来对照着看,对于一个参数x,会得到一个值y,就会发现它和C中的函数是一个道理。只是C函数中可以包含不传入任何参数的函数。A:函数可以被分为两大类:一类是库函数,一类是用户自定义函数。库函数包含了一些程序所需要的基本的需求,库函数毕竟不需要程序员再写了,减少了程序开发的难度和复杂度。Q:以前的pr原创 2024-08-13 19:31:16 · 1260 阅读 · 0 评论 -
C语言问答进阶--5、基本表达式和基本语句
赋值表达式表达式是什么?表达式是由运算符和操作数组成的式子。如下的代码#include"iostream.h"intmain(){inta=1,b=2,sum;coutreturn0;}那么如下的呢?#include"iostream.h"intmain(){inta=1,b=2;c原创 2024-08-13 19:30:01 · 1578 阅读 · 1 评论 -
C语言问答进阶--4、基本运算符
赋值运算符A:下面将介绍赋值操作符。它的符号就是=.A:赋值操作符,就是把一个值赋值给左边的变量。正如以前说的形如a=1之类的表达就是赋值运算符的具体应用。也许有的人在编写代码的时候写过这种代码:#include"iostream.h"intmain(){intx;1=x;coutreturn原创 2024-08-12 19:26:21 · 1195 阅读 · 0 评论 -
C语言问答进阶--3、基本数据类型
前面介绍了基本的整型变量和基本的输入输出函数,现在将进一步介绍其它基本变量类型和更多的基本函数。常量Q:可以直接输出常量吗?A:当然可以。#include"iostream.h"intmain(){coutreturn0;}Q:包含的头文件#include"iostream.h"我看和以前不一样了,它们有什么区别?A:你观察地很仔原创 2024-08-11 11:43:38 · 2036 阅读 · 2 评论 -
C语言问答进阶--2、C语言简介及基本的输入输出函数
C语言简介Q:您好,能大体介绍下C语言吗?A:当然可以。C语言是一种计算机语言,它主要被用在系统编程里,可以说,C语言的产生就和操作系统的编写密不可分。【C语言简要历史】1978年由美国电话电报公司(AT&T)的贝尔实验室正式发表了C语言。同时由B.W.Kernighan和D.M.Ritchie合著了著名的“THECPROGRAMMINGLANGUAGE”一书。通常简原创 2024-08-10 11:54:51 · 2712 阅读 · 0 评论 -
c++ 简单的日志类 CCLog
此日志类,简单地实现了向标准输出控制台和文件输出日志信息的功能,并能在这两者之间进行切换输出,满足输出日志的不同需求。代码如下:/* * CCLog.h * c++_common_codes * * Created by xichen on 12-1-12. * Copyright 2012 cc_team. All rights reserved原创 2024-06-07 20:09:17 · 3857 阅读 · 1 评论 -
c++ bitset的简单实现
同样也不说废话了,直接贴代码:/* * CCBitset.h * c++_common_codes * * Created by xichen on 12-1-13. * Copyright 2012 cc_team. All rights reserved. **/#ifndef CC_BITSET_H#define CC_BITSET_H#incl原创 2024-06-05 19:15:03 · 2072 阅读 · 1 评论 -
c++ vector的简单实现
不说废话了,直接贴代码:/* * ccVector.h * c++_common_codes * * Created by xichen on 12-2-18. * Copyright 2012 cc_team. All rights reserved. **/#ifndef CC_VECTOR_H#define CC_VECTOR_H//#incl原创 2024-06-05 19:14:11 · 3293 阅读 · 1 评论 -
宏 记录程序运行时间
经常遇到一些情况,需要计算代码执行的效率,所以要进行多次循环得到,用得多了,就发现把这段代码封装起来很合适,且很实用。代码如下:/* * ccTime.h * c++_common_codes * * Created by xichen on 12-2-18. * Copyright 2012 cc_team. All rights reserved.原创 2024-06-04 19:19:46 · 1093 阅读 · 0 评论 -
c++ 大整数类CCBigInteger 加减法功能的实现
微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!原创 2024-06-04 19:18:41 · 3081 阅读 · 1 评论 -
c++ 日志类 CCLog(更新)
主要增加了变参格式字符串的日志输出、静态函数日志输出以及日志等级;/* * CCLog.h * c++_common_codes * * Created by xichen on 12-1-12. * Copyright 2012 cc_team. All rights reserved. * *原创 2024-06-03 19:19:21 · 3782 阅读 · 1 评论 -
c++ string的简单实现
c++标准中的string采用模板实现,扩展性比较好;下面的代码简单实现了string类。微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!原创 2024-06-02 11:47:13 · 1261 阅读 · 1 评论 -
c++ 集合类 CCSet简单实现
微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。助您在编程路上越走越好!原创 2024-05-28 19:38:01 · 2842 阅读 · 1 评论 -
写模板string类, 认识STL的模块分离策略----小话c++(7)
作者:陈曦日期:2012-6-6 17:01:10环境:[Mac 10.7.1 Lion Intel-based x64 gcc4.2.1 xcode4.2]转载请注明出处Q: 我们需要写什么样的string类。A: 首先做个简单的需求分析。我们需要编写一个可以以char 为单位的字符串以及以wchar_t为单位的字符串类。同时,它需要能完成比较操作。自然,原创 2012-06-06 17:00:40 · 4077 阅读 · 0 评论 -
new内部在做些什么----小话c++(6)
[Mac 10.7.1 Lion Intel-based x64 gcc4.2.1 xcode4.2]Q: new操作符构造一个对象,它内部究竟调用了什么?A: 如下代码:#include using namespace std;#define COUT_ENDL(str) std::cout << #str << " is " << (str) <<原创 2012-06-02 22:55:29 · 3930 阅读 · 0 评论 -
类内部存储的东西:太简洁了----小话c++(5)
[Mac 10.7.1 Lion Intel-based x64 gcc4.2.1 xcode4.2]想知道一个类内部是什么,没有比知道它存储的数据还更直接的了。Q: 为什么一个不包含任何成员变量的类的大小不是0?如下代码:#include using namespace std;#define COUT_ENDL(str) std::co原创 2012-06-02 11:05:25 · 9776 阅读 · 15 评论 -
从小函数和小类看大设计----小话c++(4)
[Mac 10.7.1 Lion Intel-based x64 gcc4.2.1 xcode4.2]大道理大家都会说,因为书上到处都会写。不喜欢讲大道理,道理自在真实的事实中。Q: 如果需要提供一个计算两个元素较大值的模块,该提供什么样的代码?A: 当然,不能轻易将元素认为是整形,这样可能导致很多时候无法使用。既然如此,模板成为一种很好地选择。原创 2012-06-01 13:15:18 · 2799 阅读 · 1 评论 -
不喜欢用const的程序员不是好程序员----小话c++(3)
[Mac 10.7.1 Lion Intel-based x64 gcc4.2.1 xcode4.2]Q: c语言中的const和c++中的const关键字的含义是一样的吗?A: 不尽相同; c语言中const修饰的变量是不可更改的变量,它的核心还是变量;但是c++中const修饰的就是一个常量。比如,在c语言中使用const修饰的一个变量就不可以作为不可变长数组的元素个原创 2012-05-31 16:18:00 · 6929 阅读 · 5 评论 -
输入输出流,看似复杂却更好用----小话c++(2)
[Mac 10.7.1 Lion Intel-based x64 gcc4.2.1 xcode4.2]Q: c++的默认输入输出和c的有什么优缺点?A: 任何一种语言都会有自身最推荐的一套模式,因为设计者可能已经很认真考虑了。没有必要说哪种最好,哪种很差,最好和很差都有条件限制的。不同的使用者总能找到一种最适合自身的方式。 c++的输入输出更面向对象化和模块化,原创 2012-05-31 11:54:46 · 3398 阅读 · 4 评论 -
当写C语言写多了,自然就喜欢C++了----小话c++(1)
[Mac 10.7.1 Lion x64 Intel-based gcc4.2.1 xcode4.2]Q: 解释下标题吧。A: 依稀记得,写一个数值绝对值的函数时,写到第三个,实在感觉很痛苦,重复了这么多遍,立刻体会了重载和STL的重要意义。int abs(int n){ return n < 0 ? -n : n;}long abs_long(lo原创 2012-05-30 13:04:46 · 2982 阅读 · 13 评论