-1
私はc++
にguiを作成し、データを記述子に書き込んでいます。最初は_window
を作成しました。これは私のguiのハンドラです。次に、データを書き込むために使用されるオブジェクトである_conn
を作成しました。私はconn
を_window
に入れたいので割り当てました。オブジェクトのメソッドへの未定義の参照
ここで、ボタンをクリックするといくつかのデータを送信します。問題は私もコードをコンパイルすることはできません - 私はエラーが発生しています:
error: undefined reference to `conn::writeData(int, char*, int)'
本当に何が間違っているのか教えてください。私がこの行にデバッグポイントを置くと、まだコンパイルされません。この行を削除すると、コードがコンパイルされます。
これは私のコードです:
//main.cpp
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow _window;
conn * _conn = new conn(argc, argv);
_window._conn = _conn;
}
//conn.h
class conn
{
public:
conn(int argc, char ** argv);
int sock;
void writeData(int fd, char * buffer, int count);
};
//conn.cpp
void writeData(int fd, char * buffer, int count){
//TODO
}
//mainwindow.h
public:
conn * _conn;
//mainwindow.cpp
void MainWindow::on_pushButton_clicked()
{
//_conn->writeData(_conn->sock, "hello", 5);
}
あなたが定義した関数であるべき。 – rafix07