问一个 C++的输出流的问题

2018-11-28 14:58:23 +08:00
 SupperMary

已经问过百度 Google,学得太菜了也不知道为什么,所以来问一下:

std::cout << "at (" << x << ", " << y << ") value is: " << static_cast<int>(im->at<uchar>(cv::Point(x, y))) << std::endl;

这行代码是 OpenCV 的一段示范代码,作用就是显示鼠标点击在图片上的位置的坐标,下面是示范效果:

从网上找了一篇文章,也是从书内摘抄的:https://blog.csdn.net/iracer/article/details/49048481


我想问的是,输出的时候

at (" << x << ", " << y << ") value is: 

里面的 x 和 y 是怎么被替换掉的,我看 cout 的格式化输出里面没有这种例子。

2527 次点击
所在节点    C
12 条回复
wevsty
2018-11-28 15:04:40 +08:00
std::cout << "at("
<< x
<< ", "
<< y
<< ") value is: "

这样写应该很清楚了吧。
shylockhg
2018-11-28 15:07:42 +08:00
嗯 楼上回答很完美。。
stebest
2018-11-28 15:14:15 +08:00
cout 只是个对象,又不是函数
SupperMary
2018-11-28 15:16:39 +08:00
@wevsty #1 感谢回答,突然觉得问了一个很蠢的问题,一开始就走偏了~
zivyou
2018-11-28 15:19:10 +08:00
这个问题问的真是。。
你需要一个引号自动匹配工具,或者用手比划一下哪些是字符串
SupperMary
2018-11-28 15:20:31 +08:00
@zivyou #5 发现了,一眼把“ at (" << x << ", " << y << ") value is:”看成字符串了,于是看不懂了
northisland
2018-11-28 15:22:10 +08:00
借楼问一下哈,哪儿能看到 c++标准库函数实现的源码?

我记得在网易云音乐电台里,听过七牛云的某大牛,说他通过看 c++标准库的 c 实现,来精通 c++的过程。
SupperMary
2018-11-28 15:28:07 +08:00
@northisland #7 你可以试一下侯捷的 STL 源码剖析,如果你只是想单纯的看看源码,IDE 里右击标准库的头文件,查看就可以找到。这本书书看评价还是蛮不错的,
Nitroethane
2018-11-28 15:29:27 +08:00
Azumo
2018-11-28 16:02:23 +08:00
能发下这 opencv 教程的书 /网站吗
LifStge
2018-11-28 19:12:20 +08:00
牢记最基本的语法才是正解 遇到不明白要细致拆分
SupperMary
2018-11-28 23:29:58 +08:00
@Azumo 我是图书馆借的书

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/512330

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX