m********5 发帖数: 17667 | |
t**r 发帖数: 3428 | 2 kidding?
Debugging方便 快捷是c++最大的优点之一。
1. printf
2. gdb |
L***n 发帖数: 6727 | 3 是啊,我简直当script language用,以后C++可以一统天下了
【在 m********5 的大作中提到】 : 11出来之后舒服太多了 : 就是debug还是很挫
|
c*******9 发帖数: 9032 | 4 多讲两句如何好。
【在 L***n 的大作中提到】 : 是啊,我简直当script language用,以后C++可以一统天下了
|
t**r 发帖数: 3428 | 5 LOL.
for scripting. Better stick with shell. Or if you don't know shell, use
python.
Using c++ for scripting.>?
I have got my result, and you are still compiling. (or debugging)
【在 L***n 的大作中提到】 : 是啊,我简直当script language用,以后C++可以一统天下了
|
g*********e 发帖数: 14401 | |
L***n 发帖数: 6727 | 7 你不够熟,用gnu的getopt加各种成熟的C++库加上现在的语法糖(range based loop,
lambda啥的)写起来很快的,我以前用python script处理data,现在不少重用c++写了
一下,用熟了写的飞快,其实getopt够低级了,C level的,用点fancy的库比如boost
啥的能写的更顺手,写熟了编译基本一次过,真不是啥问题
【在 t**r 的大作中提到】 : LOL. : for scripting. Better stick with shell. Or if you don't know shell, use : python. : Using c++ for scripting.>? : I have got my result, and you are still compiling. (or debugging)
|
L***n 发帖数: 6727 | 8 如果只用C可以用TCC,编译巨快,CERN的croot是C++解释器,不用编译
【在 g*********e 的大作中提到】 : c++就是compile太慢
|
m********5 发帖数: 17667 | 9 Clang很赞
不过C#的要更舒服一些
【在 L***n 的大作中提到】 : 如果只用C可以用TCC,编译巨快,CERN的croot是C++解释器,不用编译
|
N******K 发帖数: 10202 | 10 debug主要需要好的IDE vs还行 但是debug不如matlab那样方便
Matlab
断点设在某处 想把某几个变量 比如数组A 画成曲线 或者直方图 等等
只要新写一个script 例如 plot(A) 然后运行就行了 A的曲线就画出来了
VS里面还不行 只能很低级的看数值 没有workspace概念
目前我只能matlab 和 c++ 一起用 c++把中间结果存成临时文件 用matlab读文件画图
来debug c++
【在 m********5 的大作中提到】 : 11出来之后舒服太多了 : 就是debug还是很挫
|
|
|
x****u 发帖数: 44466 | 11 把数组拷出来贴进matlab能麻烦多少?
图
【在 N******K 的大作中提到】 : debug主要需要好的IDE vs还行 但是debug不如matlab那样方便 : Matlab : 断点设在某处 想把某几个变量 比如数组A 画成曲线 或者直方图 等等 : 只要新写一个script 例如 plot(A) 然后运行就行了 A的曲线就画出来了 : VS里面还不行 只能很低级的看数值 没有workspace概念 : 目前我只能matlab 和 c++ 一起用 c++把中间结果存成临时文件 用matlab读文件画图 : 来debug c++
|
m********5 发帖数: 17667 | 12 对我正相反,我觉得matlab是最没有IDE的玩意儿
你说的已经不是debug了,那是做算法试验
ROOT也可以搞这种
图
【在 N******K 的大作中提到】 : debug主要需要好的IDE vs还行 但是debug不如matlab那样方便 : Matlab : 断点设在某处 想把某几个变量 比如数组A 画成曲线 或者直方图 等等 : 只要新写一个script 例如 plot(A) 然后运行就行了 A的曲线就画出来了 : VS里面还不行 只能很低级的看数值 没有workspace概念 : 目前我只能matlab 和 c++ 一起用 c++把中间结果存成临时文件 用matlab读文件画图 : 来debug c++
|
L***n 发帖数: 6727 | 13 你俩说的debug不是一个意思, NatureOK的case更high level 一点,语言层面
的debugger帮不了太大忙
【在 m********5 的大作中提到】 : 对我正相反,我觉得matlab是最没有IDE的玩意儿 : 你说的已经不是debug了,那是做算法试验 : ROOT也可以搞这种 : : 图
|
N******K 发帖数: 10202 | 14 对你这样的全堆程序猿来讲 很容易
【在 x****u 的大作中提到】 : 把数组拷出来贴进matlab能麻烦多少? : : 图
|
N******K 发帖数: 10202 | 15 matlab stop on error 这个你用过么
c++里面 我山寨了一个这样的做法
【在 m********5 的大作中提到】 : 对我正相反,我觉得matlab是最没有IDE的玩意儿 : 你说的已经不是debug了,那是做算法试验 : ROOT也可以搞这种 : : 图
|
L***n 发帖数: 6727 | 16 怎么搞?简单么?
【在 N******K 的大作中提到】 : matlab stop on error 这个你用过么 : c++里面 我山寨了一个这样的做法
|
x****u 发帖数: 44466 | 17 偶们公司的小秘都能熟练剪贴生成图形。。。
【在 N******K 的大作中提到】 : 对你这样的全堆程序猿来讲 很容易
|
N******K 发帖数: 10202 | 18 我用的很土鳖的办法
#define Stop_on_Error(x) std::cout<< x <<'反斜杠n'; 反斜杠
StopHereToDebug();
inline void StopHereToDebug()
{
std::system("pause");
int a =1;
}
比如,在要出错的地方
if (index < 0)
{
Stop_on_Error("index < 0")
}
在debug模式 出错后 系统暂停 如果你没有设置过断点 那么你还有机会 就是在
StopHereToDebug 里面马上设置一个
然后敲一下键盘 就碰到断点了 然后用vs 就可以跳到某个函数去看看 出了啥问题
【在 L***n 的大作中提到】 : 怎么搞?简单么?
|
N******K 发帖数: 10202 | 19 你没学过算法程序吧 每个程序都有若干矩阵 你要都存下来 一个一个看 你就别想
干活了
【在 x****u 的大作中提到】 : 偶们公司的小秘都能熟练剪贴生成图形。。。
|
L***n 发帖数: 6727 | 20 哦,我现在明白stop on error是干什么的了,比assert更方便一点
【在 N******K 的大作中提到】 : 我用的很土鳖的办法 : #define Stop_on_Error(x) std::cout<< x <<'反斜杠n'; 反斜杠 : StopHereToDebug(); : inline void StopHereToDebug() : { : std::system("pause"); : int a =1; : } : 比如,在要出错的地方 : if (index < 0)
|
|
|
m********5 发帖数: 17667 | 21 10年前用过,后来基本不需要stop on error
能直接raise的错误,都还算直白,看一眼就知道了
【在 N******K 的大作中提到】 : matlab stop on error 这个你用过么 : c++里面 我山寨了一个这样的做法
|
N******K 发帖数: 10202 | 22 你程序简单 不需要调试
【在 m********5 的大作中提到】 : 10年前用过,后来基本不需要stop on error : 能直接raise的错误,都还算直白,看一眼就知道了
|
m********5 发帖数: 17667 | 23 简单不简单我就不知道,但不需要调试我干嘛对debug那么picky :D
【在 N******K 的大作中提到】 : 你程序简单 不需要调试
|
x****u 发帖数: 44466 | 24 写个宏调用OLE轻而易举
【在 N******K 的大作中提到】 : 你没学过算法程序吧 每个程序都有若干矩阵 你要都存下来 一个一个看 你就别想 : 干活了
|
N******K 发帖数: 10202 | 25 你可以和三哥比ppt了
【在 x****u 的大作中提到】 : 写个宏调用OLE轻而易举
|
h*******u 发帖数: 15326 | 26 为什么不break on condition ?
【在 N******K 的大作中提到】 : 我用的很土鳖的办法 : #define Stop_on_Error(x) std::cout<< x <<'反斜杠n'; 反斜杠 : StopHereToDebug(); : inline void StopHereToDebug() : { : std::system("pause"); : int a =1; : } : 比如,在要出错的地方 : if (index < 0)
|
N******K 发帖数: 10202 | 27 这个condition可以非常复杂
另外 stop on error 在release版本也有用
【在 h*******u 的大作中提到】 : 为什么不break on condition ? : :
|
h****r 发帖数: 2056 | 28 说的都是在读PHD水平的外行话。
多线程环境下用ide debug根本不玩活。
图
【在 N******K 的大作中提到】 : debug主要需要好的IDE vs还行 但是debug不如matlab那样方便 : Matlab : 断点设在某处 想把某几个变量 比如数组A 画成曲线 或者直方图 等等 : 只要新写一个script 例如 plot(A) 然后运行就行了 A的曲线就画出来了 : VS里面还不行 只能很低级的看数值 没有workspace概念 : 目前我只能matlab 和 c++ 一起用 c++把中间结果存成临时文件 用matlab读文件画图 : 来debug c++
|
a*w 发帖数: 4495 | 29 切,大不了让你老板多买几个IDE,每个县城一个。
【在 h****r 的大作中提到】 : 说的都是在读PHD水平的外行话。 : 多线程环境下用ide debug根本不玩活。 : : 图
|
N******K 发帖数: 10202 | 30 我搞的算法里面多线程互相不用同步 ide管够
【在 h****r 的大作中提到】 : 说的都是在读PHD水平的外行话。 : 多线程环境下用ide debug根本不玩活。 : : 图
|
|
|
b*******s 发帖数: 5216 | 31 你还是回菌斑吧,求你了
【在 x****u 的大作中提到】 : 偶们公司的小秘都能熟练剪贴生成图形。。。
|