栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

linux C++ 编译运行遇到的问题汇总

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

linux C++ 编译运行遇到的问题汇总

1、没有包含iostream头文件

如果你语法检测都没有问题,还是报错

abc.h:9:21: error: expected ‘)’ before ‘test’

可以考虑这个原因

2、没有包含std命名空间

无法使用string类型

error: ‘string’ does not name a type
3、没有使用g++编译cpp文件

我的编译命令是

gcc -o a.out -a.cpp

报了奇奇怪怪的错误

/usr/bin/ld: /tmp/ccy63Xte.o: undefined reference to symbol '_ZNSt8ios_base4InitD1Ev@@GLIBCXX_3.4'
//usr/lib64/libstdc++.so.6: 无法添加符号: DSO missing from command line
4、把定义放在了头文件里

非类函数(下面为test123)的定义(不是声明)不能放在 .h 文件里,必须放在cpp文件里

如果你在头文件里定义了非类函数,如果你多次引用这个头文件,并使用这个函数,就会引发报错

/tmp/ccFtS4VQ.o:在函数‘test123[abi:cxx11]()’中:
a.cpp:(.text+0x74): test123[abi:cxx11]() 的多重定义
/tmp/ccHqXVJM.o:b.cpp:(.text+0x0):第一次在此定义
collect2: 错误:ld 返回 1
5、接收没有返回值的string类型,引发段错误
#include 
std::string ff(){

    }
int main()
{
    std::string cc = ff();
    return 0;
}
6、使用cpp-httplib库报错
error code: Connection (2)

目前找到两种可能

第一种是

httplib::SSLClient cli("https://1.2.3.4");

不能在里面加https,只能写成 1.2.3.4,但是非ssl是可以加http头的

httplib::Client cli("http://1.2.3.4");

第二种是

发请求里面一定要有接口名,哪怕是斜杠,不能写成 ""

auto res = cli.Get("/")

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1022360.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号