###g++编译器
点击查看Evernote原文。
#@author: gr
#@date: 2014-07-20
#@email: forgerui@gmail.com
对g++编译器不是特别熟悉,希望借此熟悉一下.
Contents
要使用strlen需要加入
#include <cstring>.g++编译器中的嵌套模板之间需要放一个空格.如下:
//o_O awesome!! <List<char> >中间应该有个空格
List<char> l1 = make<List<char>>("hello");
//~_~ correct
List<char> l2 = make<List<char> >("hello");
Template <typename Container>
Container make(const char* s){
return Container(s, s+strlen(s));
}
- 使用迭代器时,定义的时候需要加上typename;
//前面需要加上typename
for (typename List<char>::iterator it = l2.begin(); it != i2.end(); ++it);
在
visual studio中,shared_ptr通过#include <memory>便可以使用,使用的时候可以使用std::shared_ptr或者std::tr1::shared_ptr.
在g++中,需要#include <tr1/memory>,并且使用的时候,必须使用std::tr1::shared_ptr.gcc -Wall生成所有警告信息。gcc -M
生成文件关联的信息。包含目标文件所依赖的所有源代码你可以用gcc -M hello.c
来测试一下,很简单。
gcc -MM
和上面的那个一样,但是它将忽略由#include造成的依赖关系。依赖问题:
kalman.o:在函数‘main’中:kalman.cpp:(.text+0x18b):对‘cv::KalmanFilter::KalmanFilter(int, int, int, int)’未定义的引用
编译时可以使用
g++ -c kalmane.cpppkg-config --cflags opencv
同样链接时可以使用
g++ -o kal kalman.cpppkg-config --libs opencv
###g++编译器的更多相关文章
- gcc/g++编译器的安装与说明
gcc/g++编译器的安装与说明 1.gcc/g++编译器的安装 gcc yum install gcc g++ yum install gcc-c++ 2.gcc/g++的作用 将c/c++源代码编 ...
- 算法竞赛中G++编译器的编译指令简单说明
算法竞赛使用的在线判题平台在FAQ会给出提交的代码是通过什么指令进行编译的.比如hustoj给出的c++编译指令通常是: C++: g++ Main.cc -o Main -fno-asm -O2 - ...
- 关于 g++ 编译器
g++由自由软件基金发行,g++是基于类unix的c++编译器,通常在命令行运行.它一般附带于类Unix系统中,因此如果你正在运行Unix或Linux系统,它很可能已经存在于你的系统中.你可以对一个源 ...
- g++编译器的使用
关于g++ g++ 是GNU组织开发出的编译器软件集合(GCC)下的一个C++编译器.它是Unix 和 Linux 系统下标配的 基于命令行的 C++编译器.如果你的系统是Windows,可以按照 ...
- Linux环境下GNU, GCC, G++编译器
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u012823258/article/details/36890125 一.GNU GNU是" ...
- Linux环境下GNU, GCC, G++编译器(转)
一,GNU GNU是“GNU 's Not Unix”的递归缩写, Stallman宣布GNU应当发音为Guh-NOO(革奴)以避免与new这个单词混淆(注:Gnu在英文中原意为非洲牛羚,发音与new ...
- g++编译器的使用(转载)
关于g++ g++ 是GNU组织开发出的编译器软件集合(GCC)下的一个C++编译器.它是Unix 和 Linux 系统下标配的 基于命令行的 C++编译器.如果你的系统是Windows,可以按照 ...
- CentOS 7 升级gcc/g++编译器
gcc的升级必须要使用源码进行升级,也就说,必须要使用源码进行编译才行.我的7.2的CentOS目前自带的gcc是4.8.5的,gcc从4.8之后开始支持C++11,但是鉴于现在C++14.C++17 ...
- GCC、g++编译器和gcc编译器的区别
GCC:(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器.它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分. gcc:GNU的C语 ...
随机推荐
- 起底多线程同步锁(iOS)
iOS/MacOS为多线程.共享内存(变量)提供了多种的同步解决方案(即同步锁),对于这些方案的比较,大都讨论了锁的用法以及锁操作的开销,然后就开销表现排个序.春哥以为,最优方案的选用还是看应用场景, ...
- [一]JQueryMobile简介
JQueryMobile 基于JQuery,实现对不同尺寸手机屏幕的支持,提供了许多组件,以及对于手机端的常用事件(touch.tap.taphold) 如何使用 1.引入jquery.js.jque ...
- JS实现项目查找功能
又是好久没有更新文章了,技术差,人又懒是重罪啊!! 在工作中每天都要查找目前正在接手的项目,而如果项目一多起来怎么办呢? 最近主管突然说要找一下以前的项目改一点BUG,然后我就找了半天才找到对应的文件 ...
- Linux使用netstat命令查看并发连接数[转]
转自:http://www.cnblogs.com/wayne173/p/5652043.html Linux使用netstat命令查看并发连接数 我们的网站部署在linux的服务器上,特别是we ...
- 用Bootstrap 写了个站点
近期发现vdceye的站点有些丑陋,就找了一个bootstrap工具,又一次把站点写了一遍 这个工具果然好用 http://vdceye.com/
- ArcGIS教程:加权叠加
摘要 使用经常使用測量比例叠加多个栅格数据,并依据各栅格数据的重要性分配权重. 插图 插图中,两个输入栅格已又一次分类为 1 至 3 三种公共測量级别.为每一个栅格均分配了一个影响百分比.这些像元值与 ...
- EXE文件结构及读取方法
一.EXE文件概念 EXE File英文全名executable file ,译作可运行文件,可移植可运行 (PE) 文件格式的文件,它能够载入到内存中,并由操作系统载入程序运行.是可在操作系统存储空 ...
- XMemcached使用示例--转
Memcached 是一个高性能的分布式内存对象的key-value缓存系统,用于动态Web应用以减轻数据库负载,现在也有很多人将它作为内存式数据库在使用,memcached通过它的自定义协议与客户端 ...
- java常用的包的简介
java常用的包: java.lang:包含java语言的核心类,如String.math.system和thread类等,使用这个包下的类无需import导入,系统会自动导入这个包下的所有类. ...
- Java基础知识强化之网络编程笔记17:Android网络通信之 使用Http的Post方式读取网络数据(基于HTTP通信技术)
使用Http的Post方式与网络交互通信.Post方式需要向网络传输一部分数据,同时具有输入流和输出流. 详见:Android(java)学习笔记210:采用post请求提交数据到服务器(qq登录案例 ...