qt使用 iostream 头文件
在用Qt的时候一般调试都用qDebug()就够了,但有些时候不得不用里边的cout。
最典型的的就是在用opencv的时候,像Mat数据结构想用qDebug()直接输出是不可能的,但是cout却可以。但有时候你会发现cout用不了了?
这段程序编译没报错,但最后也没有输出。(执行完记得在后台把程序杀掉)
上网查了下发现是和QTextStream的cout、cin冲突了。所以我们就不用using namespace std 改用std::cout就行了:
#include "mainwindow.h"
#include <QApplication>
#include <iostream>int main(int argc, char *argv[])
{QApplication a(argc, argv);MainWindow w;w.show();std::cout<<"hello world\n"<<std::endl;return a.exec();
}
输出:
iostream 和 iostream.h 的区别
转自: http://blog.sina.com.cn/m/majianan (我的新浪Blog)
前一段时间在自学C++,现在工作了用Java,不过以前写的一些文章自我感觉还不错,哈哈,就转来这里,大家多提意见。
蛮喜欢这个Blog。
http://www.blogjava.net/majianan/archive/2006/08/21/64759.html
关键词:< iostream > 和 < iostream.h >
你写程序的时候,用< iostream >还是< iostream.h >?
你知道它们有什么区别么?还是认为他们根本就是一样的?
下面听我给你吹(文中纯属个人言论,不涉及国家机密,请放心阅读,若转载请注明出处作者-)
—majianan
其实没有< iostream.h >这样的东西 — 标准化委员会在简化非C标准头文件时用< iostream > 取代了它。但又没有完全取消< iostream.h >的使用,并且很多编译器都同时支持< iostream >和< iostream.h >,造成现在的局面,老大(标准化委员会)确实有不得已的苦衷。
话说当年,在标准化委员会动手重建新的标准库的时候,遇到了问题。为了避免类名函数名的冲突问题,引入了名字空间std,但无数现有的C++代码都依赖于使用了多年的伪标准库中的功能,例如,声明在< iostream.h >和< complex.h >等头文件中的功能。现有软件没有针对使用名字空间而进行相应的设计或者升级,如果用std来包装标准库导致现有代码不能使用,那手底下的小弟(程序员)是不会同意的。
标准化委员会为了拉拢人心,吸引更多的人入会,决定为包装了std的那部分标准库构建新的头文件名。将现有C++头文件名中的.h去掉,所以就出现了< iostream.h>和< iostream >等很多双胞胎。对于C头文件,采用同样方法但在每个名字前还要添加一个C,所以C的<string.h>变成了。
旧的C++头文件是官方明确反对使用的,但旧的C头文件则没有(以保持对C的兼容性)。其实编译器制造商不会停止对客户现有软件提供支持,所以在可以预计的将来,旧的C++头文件还会嚣张一段时间。
如果能明白字符串头文件的使用,举一反三,其他的也差不多会用了。
<string.h>是旧的C头文件,对应的是基于char*的字符串处理函数;
是包装了std的C++头文件,对应的是新的strng类;
是对应旧的C头文件的std版本。
好像跑远了,言归正传。如果你的编译器都同时支持< iostream >和< iostream.h >,那使用#include < iostream >,得到的是置于名字空间std下的iostream库的元素;如果使用#include < iostream.h >,得到的是置于全局空间的同样的元素。在全局空间获取元素会导致名字冲突,而设计名字空间的初衷正是用来避免这种名字冲突的发生。还有,打字时< iostream >比< iostream.h >少两个字,所以我会使用< iostream > -
qt使用 iostream 头文件相关推荐
- c语言fstream头文件的作用,iostream头文件的作用是什么
iostream头文件包含了操作输入输出流的方法,比如读取一个文件,以流的方式读取:其作用是:让初学者有一个方便的命令行输入输出试验环境.iostream的设计初衷是提供一个可扩展的类型安全的IO机制 ...
- 在QT中自定义头文件和源文件的使用方法
在QT中自定义头文件和源文件的使用方法 最近想用QT来实现一个简单的功能,为了便于函数的集成需要将功能函数进行封装,自己补了些c++的函数封装方法,发现在QT中还不太一样.接来下简单介绍一下具体怎么实 ...
- QT中关于头文件一个很奇怪的问题
最近在用QT Creator时候遇上一个很奇怪的问题,以往添加头文件使用#include<QStringListModel>这样的格式就可以,但是现在有时候却编译通不过,报了一大堆的错误, ...
- C++中的数组和字符串,strlen函数,iostream头文件
1.内容简介: C++语法是在C语言的基础上发展而来的,被称为"带类的C",兼容C语言语法.本文介绍数组和字符串的基本知识. 2.C,C++字符数组和字符串: 字符串以'\0'结尾 ...
- Linux中使用iOStream头文件,在Linux中使用gcc链接iostream.h
我想在Linux(Linux MINT 8)中运行我的第一个C++程序.我使用gcc或g++,两者都有相同的问题:编译器找不到我要导入的库. 我怀疑我应该复制工作文件夹中的iostream.h文件(我 ...
- qt添加头文件和源文件到工程
添加头文价 1.在项目文件夹下新建include文件夹 2.在qt下新建头文件 3.指定头文件位置 4.cmakelist.txt添加 INCLUDE_DIRECTORIES(${PROJECT_SO ...
- C++ | Qt 常用头文件及容器类
目录 一.Qt常用头文件 1. <QtGlobal>头文件 (1) Qt 中的数据类型定义 (2) 常用函数 (3) 常用宏 2.<QMath>头文件 二.Qt容器类 1.顺序 ...
- 【C++ 语言】面向对象 ( 类定义 | 限制头文件引用次数 | 构造方法 | 析构方法 )
文章目录 类的定义 ( 头文件引用次数控制 ) 类的实现 ( 构造函数 | 析构函数 ) CMake 编译配置 类测试 ( 构造析构调用测试 ) 类的定义 ( 头文件引用次数控制 ) 类定义 , 类一 ...
- 将类的定义放在头文件中,把成员函数的实现代码放在一个cpp文件中
将类的定义放在头文件中,把成员函数的实现代码放在一个cpp文件中 写这种.h和.cpp文件分开的大程序,虽然对很多人来说很简单,对自己来说算是第一次吧,好好学C++,加油~ 题目:定义Point类,由 ...
- C++头文件,预处理详解
一个例子 C++遵循先定义,后使用的原则.就拿函数的使用来举例吧. 我看过有些人喜欢这样写函数. #include<iostream> using namespace std;int ad ...
最新文章
- 新基建之数据中心2020
- pythonurllib微博登录怎么删_Python骚操作之删微博还需用手动吗?Python去做就好了!...
- App自动化测试之Adb基础命令使用
- Tomcat源码解析七:Tomcat Session管理机制
- PostgreSQL 数组类型
- 朝花夕拾——finally/final/finalize拨云雾见青天
- ssh传输越多越慢_Linux下分析网站访问慢原因
- linux远程登录模拟输入输出重定向,从零开始学习Linux(三十三):Shell基础之输入输出重定向...
- PHP 是生还是死?
- 红巨星粒子插件Trapcode Suite 14.0 Win版全套中文完美汉化版
- 中英文国际机场三字代码
- 电脑时间校准方法,怎么校准电脑时间
- Messenger:使用消息的跨进程通信 (Message.replyTo()的使用)
- 转化二进制数的c语言程序,c语言实现二进制数转换为十进制
- win10 无法修改时间,自动设置时间灰色
- html5 canvas创建弹性碰撞动画
- 中级软考-软件设计师(四)
- js中常用的数学方法(全)
- Java实现第九届蓝桥杯小朋友崇拜圈
- 国美金融立足场景布局AI,建立智能投顾
热门文章
- NAT- STUN和TURN简介
- ubuntu截图工具KSnapshot(静态图),peek(动态图)
- 阈值分割--大津阈值法(OSTU)
- 计算机创业计划书800字大全,创业计划书范文800字
- 十天学会单片机(3)发光管闪烁,蜂鸣器发声
- pythonlocust使用技巧_python locust 性能测试:HOOKS钩子方法
- Android问题解决--“StorageManager.getVolumeList NullPointerException”空指针再现,getExternalDirs
- 单片机原理及应用 C51编程 proteus仿真
- python同花顺交易接口_TradeApi为A股程序化交易接口2.9.0发布
- 面试2年经验的Java程序员面试题部分带答案