所以,大家好,这是我的第一个问题!
我刚开始使用带有Connector C ++的MySQL数据库(在Windows 10上作为IDE Codeblocks,GNU gcc编译器)。所有必要的库都链接在一起,我使用了现成的安装程序。 我现在的目标只是创建与服务器的连接。通过查看MySQL手册示例的示例,我编写了这个非常基本的代码。它编译得很好,但在运行时,它会崩溃并显示以下消息:"程序已停止工作"。所以代码在这里:
#include <iostream>
#include <mysql_connection.h>
#include <mysql_driver.h>
#include <driver.h>
using std::endl;
using namespace sql;
int main()
{
sql::Driver *driver;
sql::Connection *con;
std::cout<<"Created driver and con"<<endl;
driver = get_driver_instance();
std::cout<<"Created driver instance"<<endl;
std::cout<<"Con: "<<con<<endl;
std::cout<<"Driver: "<<driver<<endl;
con = driver->connect("localhost", "root", "my_password");
std::cout<<"Connected"<<endl;
bool is_valid = con->isValid();
std::cout<<"Connection valid: "<<is_valid<<endl;
delete con;
return 0;
}
最后一个ouptut是&#34;&#34;创建了驱动程序实例&#34;。所以我怀疑,当驱动程序试图连接到服务器时,程序会崩溃。 我是编程的菜鸟,所以我很感谢提示/建议等。我真的无法弄清楚为什么会这样,我花了相当多的时间在互联网上搜索。 Try / catch块无法找到任何错误。 我也使用了gdb Debugger,它给了我这个:
Debugger name and version: GNU gdb (GDB) 7.6.1
Child process PID: 6544
In RaiseException () (C:\WINDOWS\SysWOW64\KernelBase.dll)
#13 0x0040159a in _fu3___ZSt4cout () at C:\Users\podiceps_cristatus\Documents\programmitos\try_mysql\main.cpp:24
C:\Users\podiceps_cristatus\Documents\programmitos\try_mysql\main.cpp:24:408:beg:0x40159a
At C:\Users\podiceps_cristatus\Documents\programmitos\try_mysql\main.cpp:24
#13 0x0040159a in _fu3___ZSt4cout () at C:\Users\podiceps_cristatus\Documents\programmitos\try_mysql\main.cpp:24
C:\Users\podiceps_cristatus\Documents\programmitos\try_mysql\main.cpp:24:408:beg:0x40159a
Debugger finished with status 0
帮助将获得批准!