
C++错误
小丑快学习
这个作者很懒,什么都没留下…
展开
-
(gdb) n Cannot find bounds of current function
GDB 调试出现错误出现这样的错误,并产生 segment fault;0x00008766 in ?? ()(gdb) nCannot find bounds of current function我遇到的问题是因为动态库链接错误而导致的,解决方案如下:但当遇到这个问题的时候,我继续单步调试,但是当遇到某个函数的时候我发现当我使用 s 命令单步调试的时候却没法进入该函数,会出现这样的错误:Cannot find bounds of current function所以这个时候我们应该明白原创 2022-06-04 15:28:18 · 5503 阅读 · 1 评论 -
构造函数不匹配问题 no matching function for call to ‘xxxx::xxxx(xxxx*)’
这个问题是一个有点难发现的问题,因为这行代码的:shared_ptr<VisualMachine>temp = make_shared<VisualMachine>(new VisualMachine);报错确实这样的:上述说我们的构造函数找不到何时的版本,编译器想要一个传递VisualMachine *的参数,为什么会这样报错呢?因为我们用错了make_shared<>函数。原本make_shared<>功能和new的功能极为相似,都是再堆上动态原创 2021-03-12 19:48:54 · 6660 阅读 · 0 评论 -
vs调试C++弹出窗口抛出异常:Debug Assertion Failed!Expression:vector subscript out of range xxxxxxx
运行c++代码时产生以上的错误,这种错误的引起原因一般是操作了无效的内存导致的,比如:vector<int> temp={1,2,3,4,5};temp.clear();temp[0];//当把一个容器清空后,如果用下标随机访问将会导致异常一般使用无效的迭代器也会导致访问无效的内存,具体什情况下迭代器会失效可以参考:STL顺序容器...原创 2021-02-18 10:10:57 · 3411 阅读 · 0 评论 -
error C3867: “XXX::XXX”: 非标准语法;请使用 “&“ 来创建指向成员的指针。
VS初学C++模板,想用C++写个栈,结果出现error C3867: “XXX::XXX”: 非标准语法;请使用 “&” 来创建指向成员的指针。因为在其他函数中使用了构造参数的局部变量。Mystack(const int size) { p = shared_ptr<T[]>(new T[size]); top = -1; Size = &size; };bool push( T &t) {原创 2021-01-20 18:54:40 · 2196 阅读 · 0 评论