![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
tianxiawuzhei
热爱技术,喜欢探究,喜欢记录和分享。
展开
-
C++学习点滴--关于private作用域问题
现在学习C++,前几天看到一个程序,如下所示: (上图摘于ITjob网站)当时就很困惑,因为我是初学,可能对大牛来说就是小菜。我困惑的是:对一个类如class person{private:int m_id;char * m_name;public:.....};为什么在上面的程序中可以用一个对象直接调用private成员,因为据我所知,是不能原创 2012-12-19 11:21:26 · 1389 阅读 · 0 评论 -
(转)C++中extern “C”含义深层探索
(转)C++中extern “C”含义深层探索 1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计转载 2015-09-11 15:35:01 · 349 阅读 · 0 评论 -
C++构造函数详解及显式调用构造函数
c++类的构造函数详解 一、 构造函数是干什么的class Counter{public: // 类Counter的构造函数 // 特点:以类名作为函数名,无返回类型 Counter() { m_value = 0;转载 2015-06-27 09:49:17 · 637 阅读 · 0 评论 -
静态链接与动态链接的区别
动态链接库、静态库、import库区别动态链接库(Dynamic Linked Library):Windows为应用程序提供了丰富的函数调用,这些函数调用都包含在动态链接库中。其中有3个最重要的DLL,Kernel32.dll,它包含用于管理内存、进程和线程的各个函数;User32.dll,它包含用于执行用户界面任务(如窗口的创建和消息的传送)的各个函数;GDI32.dll,转载 2015-05-19 12:38:21 · 581 阅读 · 0 评论 -
C++全局变量的声明和定义
原文地址:http://blog.csdn.net/candyliuxj/article/details/7853938参考:http://wrchen.blog.sohu.com/71617539.html(1)编译单元(模块) 在VC或VS上编写完代码,点击编译按钮准备生成exe文件时,编译器做了两步工作:第一步,将每个.cpp(.c)和相应的.h文件编译成obj转载 2015-04-23 18:19:32 · 536 阅读 · 0 评论 -
C++ 枚举声明 enum 和 enum class
枚举是用户定义的类型,其中包含一组称为枚举器的命名的整型常数。 说明本文包含 ISO 标准 C++ 语言 enum 类型和 C++11 中引入的范围(或强类型)enum class 类型。 有关 C++/CLI 和 C++/CX 中 public enum class 或 private enum class 类型的详细信息,请参阅 枚举类。转载 2015-04-10 15:05:30 · 23345 阅读 · 1 评论 -
C++ string测试
1、#include "stdafx.h"#include #include #include using namespace std;int _tmain(int argc, _TCHAR* argv[]){ string str1("abc\0de"); int str1length = str1.size(); std::cout <<" 1 ======= "<<原创 2015-03-26 12:38:27 · 609 阅读 · 0 评论 -
How to mix C and C++
Contents of this section:What do I need to know when mixing C and C++ code?How do I call a C function from C++?How do I call a C++ function from C?How can I include a standard C he转载 2015-01-23 17:05:25 · 819 阅读 · 0 评论 -
extern “C”
在写c文件时,在头文件中总是加上:#ifdef __cplusplusextern "C" {#endif// all of your legacy C code here#ifdef __cplusplus}#endif原创 2015-01-23 16:14:12 · 430 阅读 · 0 评论 -
c++中的 extern "C"
比如说你用C 开发了一个DLL 库,为了能够让C ++语言也能够调用你的DLL 输出(Export) 的函数,你需要用extern "C" 来强制编译器不要修改你的函数名。通常,在C 语言的头文件中经常可以看到类似下面这种形式的代码:C代码 #ifdef __cplusplus extern "C" { #endif /转载 2015-01-23 16:46:54 · 461 阅读 · 0 评论 -
UTF8最好不要带BOM,附许多经典评论
UTF-8 不需要 BOM,尽管 Unicode 标准允许在 UTF-8 中使用 BOM。所以不含 BOM 的 UTF-8 才是标准形式,在 UTF-8 文件中放置 BOM 主要是微软的习惯(顺便提一下:把带有 BOM 的小端序 UTF-16 称作「Unicode」而又不详细说明,这也是微软的习惯)。BOM(byte order mark)是为 UTF-16 和 UTF-32 准备的,转载 2015-01-23 17:40:29 · 976 阅读 · 0 评论 -
C/C++遍历目录下的文件或指定文件
每次遇到这样的问题总会折腾很久,到网上搜,或者查资料,弄了很多次,但就是没记住,这次写程序又遇到了,干脆就把它都弄清楚了,然后顺便在这里记录一下,以后再遇到就不用到处去找了。 用 C/C++ 遍历目录文件主要有两种方式,分别对应在 Windows VS 环境下和 Linux\Unix 环境下的方法,它们各自所使用的函数如下:(Windows VS)_findf转载 2015-01-23 10:38:32 · 7062 阅读 · 1 评论 -
简单理解Socket
题外话前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公司使用的一些控件的开发,浏览器兼容性搞死人;但主要是因为这段时间一直在看html5的东西,看到web socket时觉得很有意思,动手写几个demo,但web socket需要特定的服务器支持,由于标准制定工作还没完成,所以没有多少主流的服务器支持,自己在网上下载了几个实现,包括php的、C#的、甚至Node.js的转载 2015-01-20 19:45:49 · 610 阅读 · 0 评论 -
C++ extern c 记录
1、用linux nm命令解析一个libb64.c 文件编译生成的libb64.o文件$ nm libb64.o00000001 T base64_decode_block00000001 T base64_decode_value00000001 T base64_encode_block00000001 T base64_encode_blockend00000001原创 2015-01-28 20:27:01 · 912 阅读 · 0 评论 -
pthread多线程编程的学习小结
pthread多线程编程整理 1 Introduction不用介绍了吧…2 Thread Concepts1. Thread由下面部分组成:a. Thread IDb. Stackc. Policyd. Signal maske. Errnof.转载 2015-01-09 14:16:14 · 782 阅读 · 0 评论 -
C++ DELETE 操作
在C++中delete指针前不用进行指针是否为空的判断,因为delete的实现已经做了这件事情! 使用delete来delete已释放的指针是一个严重的错误,所以要在delete完一个指针后手动把它置空!因为delete空指针是安全的。 以下是Bjarne Stroustrup's C++ Style and Technique FAQ中的 Why转载 2015-01-26 09:57:44 · 928 阅读 · 0 评论 -
socket: bind函数
socket的bind函数简单分析一下socket中的bind : 原文地址 在最开始接触bind的时候,只是在写基于tcp的server端的时候,知道在listen之前需要先bind一下,用来确保socket能在某个固定的端口监听。而bind的时候,函数参数中的端口填自己将要绑定的端口就行;而IP地址,需要填本机的IP,但是也可以用一个宏INADDR_ANY代替,用这个宏就可以不用查找本机的转载 2016-04-06 20:50:58 · 11312 阅读 · 1 评论