一些编译错误及解决方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010425361/article/details/52583673

初学C++编程时,总会遇到这样那样的错误。因此,总结一些经常遇到的编译错误及解决方法,方便自己和他人,不定期更新中~

  • 错误1:cannot declare member function ‘static ......’ to have static linkage
  • 解决方法:.cpp文件里的函数就不要带 static 了,删除就好

  • 错误2:在生成动态库时遇到以下问题

relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
math.o: 无法添加符号: 错误的值
  • 解决方法:由于是64位系统,所以在编译时需要添加参数“-fPIC”
g++ -fPIC -c math.cpp
g++ -shared -fPIC -o libmath.so math.o
  • 错误3:已经包含了头文件#include <string>仍出现string未声明的错误提示
string’ has not been declared
  • 解决方法:由于string属于标准命名空间,所以需要使用using namespace std; ,或者在使用string时加std:: ,这和cout是一样的。

一个编译错误寻求解决方法!!

05-26

Access violaton at address 004c1b4b in module 'wowrw1_p.exe',read of address 00000008rn大家知道这是什么错误吗?rn搞了一天也没搞好,rn编译停留在 if adoquery1.fieldbyname('国家').AsString<>node1.Text thenrn这个语句上面。rnrn大家帮忙找找我把代码放出来,大侠帮我找找。rnprocedure TmainForm.FormCreate(Sender: TObject);rnvar i,j,k:integer;rnbeginrnwith adoquery1 dorn beginrn close;rn sql.Clear;rn sql.Add('select * from wowrw1');rn open;rn end;rnadoquery1.Open;rnadoquery1.first;rnnode2:=treeview1.Items.Add(node1,adoquery1.fieldbyname('国家').AsString);rnnode3:=treeview1.Items.AddChildFirst(node2,adoquery1.fieldbyname('省城').AsString);rnnode4:=treeview1.Items.AddChildFirst(node3,adoquery1.fieldbyname('地区').AsString);rntreeview1.Items.AddChildFirst(node4,adoquery1.fieldbyname('任务名称').AsString);rnrnwhile not adoquery1.Eof dornbeginrn adoquery1.Next;rn if adoquery1.fieldbyname('国家').AsString<>node1.Text then//错误停留在这里。rn beginrn for i:=0 to node1.Count-1 dorn beginrn if adoquery1.fieldbyname('省城').AsString<>node1.Item[i].Text thenrn beginrn for j:=0 to node2.Count-1 dorn beginrn if adoquery1.fieldbyname('地区').AsString<>node1.Item[i].Item[j].Text thenrn beginrn for k:=0 to node3.Count-1 dorn beginrn if adoquery1.fieldbyname('任务NPC').AsString<>node1.Item[i].Item[j].Item[k].Text thenrn beginrn node2:=treeview1.Items.Add(node1,adoquery1.fieldbyname('国家').AsString);rn node3:=treeview1.Items.AddChildFirst(node2,adoquery1.fieldbyname('省城').AsString);rn node4:=treeview1.Items.AddChildFirst(node3,adoquery1.fieldbyname('地区').AsString);rn treeview1.Items.AddChildFirst(node4,adoquery1.fieldbyname('任务名称').AsString);rn endrn else treeview1.Items.AddChildFirst(node4,adoquery1.fieldbyname('任务名称').AsString);rn end;rn end else node4:=treeview1.Items.AddChildFirst(node3,adoquery1.fieldbyname('地区').AsString);rn end;rn end else node3:=treeview1.Items.AddChildFirst(node2,adoquery1.fieldbyname('省城').AsString);rn end;rn end;rnend;rnend;rn

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试