C++基本入门资料搜集
目前做项目主要使用C#语言,可是发现C#开源的东西实在太少了,而且都是“二手货”。所谓的二手货,就是参照原作者的思路,以及其代码,其他人实现的。这样的二手货,一般都存在问题:要么功能不完整,要么就是C#改编者没有切实领会到原作者的思想。再考虑到C++的应用前景,及其实用的广泛性,打算深入学习下C++。怎么学?把《C++ Primer》从头看到尾,估计看完也忘了。最好的方法还是看大牛的算法,然后再去研究语言特性,即不懂的地方再google和查书。考虑到目前需要研究下聚类算法,所有就先拿洞庭散人的那篇<C++实现的K-means开刀吧>。考虑以后一边研究北大老师李晓明《搜索引擎--原理、技术、与系统》一书中的配套系统(TSE)Tiny Search Engine 的C++源码,一边学习C++语言特性。
#pragma once 的意思
以前写的,翻出来看看
在vc6的时代头文件一般使用ifndef define endif
在vc7的时代头文件一般成了pragma once
不知道有没有人深究其中的意义
为什么有这样的代码,是为了头文件不被重复引用,那样编译器抱错的,这两种方法都是同样的目的,有没有区别呢?
还是举例来说明,可能有好几个库,每个库内部可能都有public.h这个文件,如果使用
ifndef public_h
define public_h
...
endif
那么当一个文件同时引用两个这样的库时,后一个库里的文件就不被编译了,而pragma once可以保证文件只被编译一次
看起来pragma once比ifndef define endif要好,那么ifndef define endif
的地方都pragma once好了。今天碰到了又一个例子,比如你有一个zlib.h在几个库都用到,而为了方便,把zlib每个目录下copy了一分,因为这个文件不会作修改,已经很完整了,这个时候如果使用pragma once,就会重复定义,看来ifndef define endif还是又派上用场的地方。
所以对于公有或者接口的文件,使用ifndef define endif,对于内部的文件使用pragma once.
呵呵,你压根儿用不着是吧,当我没说过。
C++基本入门资料搜集相关推荐
- 少走弯路:强烈推荐的TensorFlow快速入门资料(可下载)
(图片付费下载自视觉中国) 作者 | 黄海广 来源 | 机器学习初学者(ID: ai-start-com) 知识更新非常快,需要一直学习才能跟上时代进步,举个例子:吴恩达老师在深度学习课上讲的Tens ...
- mapreduce程序输出评分8.6分以上的书名和评分_如何选编程入门资料?光评分高怎么够|文末赠书...
说到编程入门,很多人第一想到的肯定是Python. 那么,编程零基础应当如何开始学 Python ,才不会入门即放弃?一开始的学习资料的选择尤为重要.那么,如何筛选适合自己的入门资料?这里和大家谈谈我 ...
- 带你少走弯路:强烈推荐的Keras快速入门资料和翻译(可下载)
上次写了TensorFlow和PyTorch的快速入门资料,受到很多好评,读者强烈建议我再出一个keras的快速入门路线,经过翻译和搜索网上资源,我推荐4份入门资料,希望对大家有所帮助. 备注:另外两 ...
- 带你少走弯路:强烈推荐的Pytorch快速入门资料和翻译(可下载)
上次写了TensorFlow的快速入门资料,受到很多好评,读者强烈建议我出一个pytorch的快速入门路线,经过翻译和搜索网上资源,我推荐3份入门资料,希望对大家有所帮助. 备注:TensorFlow ...
- 带你少走弯路:强烈推荐的TensorFlow快速入门资料和翻译(可下载)
知识更新非常快,需要一直学习才能跟上时代进步,举个例子:吴恩达老师在深度学习课上讲的TensorFlow使用,这个肯定是他近几年才学的,因为谷歌开源了TensorFlow也就很短的时间. 吴恩达老师以 ...
- 一些NLP的入门资料参考
本站整理了一些NLP的入门资料参考,建议初学者看看. 需要复制链接在浏览器里打开. 1.通过kaggle比赛学习机器学习文本分类方法https://zhuanlan.zhihu.com/p/34899 ...
- Node.js:入门资料
<快速搭建 Node.js 开发环境以及加速 npm> http://fengmk2.com/blog/2014/03/node-env-and-faster-npm.html <N ...
- 循环神经网络(RNN)和LSTM初学者指南 | 入门资料
原作 Skymind 乾明 编译 量子位 出品 | 公众号 QbitAI 最近,有一篇入门文章引发了不少关注.文章中详细介绍了循环神经网络(RNN),及其变体长短期记忆(LSTM)背后的原理. 具 ...
- 基于Jupyter Notebook从头学习机器学习 | 入门资料分享
乾明 编译整理 量子位 报道 | 公众号 QbitAI 热心分享机器学习入门资料的人越来越多了. 今天跟大家介绍的是一个名为ZekeLabs的机构推出的机器学习入门资料. ZekeLabs是一个位于 ...
最新文章
- 如何学习开源系统有感(一)
- Matlab与C/C++混合编程接口及应用
- 前端学习(3286):Aop
- 1-4dockerfile基本使用
- 研究员告警:严重漏洞影响数千万台IoT设备,可远程查看实时音视频并接管设备...
- Download PuTTY: latest release (0.75) pscp
- pca百分比取多少比较好_欧式家具沙发价格是多少?沙发怎么护理会比较好?
- 教孩子学编程 python 下载_教孩子学编程 python语言版
- 计算机辅助机械设计a卷,二维CAD工程师(机械设计)考试A卷
- android 布局之滑动探究 scrollTo 和 scrollBy 方法使用说明
- android动态壁纸的制作教程,巧用Windows自带工具,简易制作动态壁纸教程
- 服务器系统怎么恢复出厂设置,华为服务器2288恢复出厂设置
- 深入理解Nginx 读书笔记
- 迅雷面试题: 模拟银行一天的工作, 统计vip客户和普通客户的办理业务的平均等待时间.
- ps复制选中的图层为新图层
- 语音识别——kaldi - Online Audio Server(服务器客户端建立方法-旧版在线解码)
- 苹果手机编辑word_苹果手机更新后卡顿,关闭这两个开关立马恢复,设置之后差点泪崩...
- 项目1----泰戈尔诗集
- 网络安全专业应届生必备的几个实用工具,快收藏
- CTF-安全杂项(十四)
热门文章
- java web购物车代码_java web开发之购物车功能实现示例代码
- ef 排序string转int_Java排序算法——基数排序(Radix Sort)
- python 打印表格边框_python设置表格边框的具体方法
- 查询linux信号量命令,linux下的trap命令和SIGHUP信号量详解。
- js控制table中tr位置互换
- (五) shiro web应用
- java面试题二十三 接口
- python gui测试框架_八款常用的 Python GUI 开发框架推荐
- 使用python调用matlab方法
- matplotlib(五)排版布局