0

独自の C++ クラスの要素を作成したい。私のJNI関数:

JNIEXPORT void JNICALL Java_com_example_telo3_Process_inicializar_1nativo
  (JNIEnv *, jobject){

Almacena almacena;

}

Almacena は C++ クラスです。

#pragma once
#include <opencv2/objdetect/objdetect.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>

#include <iostream>
#include <stdio.h>

using namespace std;
using namespace cv;

class Almacena
{
private:
    std::vector<Rect> myfaces;
    std::vector<Rect> myeyes_r;
    std::vector<Rect> myeyes_l;
    std::vector<Rect> mynoses;
    std::vector<Rect> mymouths;
    Point2f P0;
    Point2f P1;
    Point2f P2;
    Point2f P3;


public:
    Almacena(void);
    ~Almacena(void);
    void set_faces(std::vector<Rect> faces);
    void set_eyes_r(std::vector<Rect> eyes_r);
    void set_eyes_l(std::vector<Rect> eyes_l);
    void set_noses(std::vector<Rect> noses);
    void set_mouths(std::vector<Rect> mouths);
    void set_P0(Point2f aux);
    void set_P1(Point2f aux1);
    void set_P2(Point2f aux2);
    void set_P3(Point2f aux3);

    std::vector<Rect> get_faces();
    std::vector<Rect> get_eyes_r();
    std::vector<Rect> get_eyes_l();
    std::vector<Rect> get_noses();
    std::vector<Rect> get_mouths();
    Point2f get_P0();
    Point2f get_P1();
    Point2f get_P2();
    Point2f get_P3();

};

どのようにできるのか?私のコードで好きなようにすると、次のエラーが表示されるためです。

「Almacena::~Almacena()」への未定義の参照 telo3 行 41、外部の場所: C:\Users\telo\Desktop\ANDROID\android-ndk-r8d\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\ arm-linux-androideabi\bin\ld.exe: .\obj\local\armeabi\objs\nativo\nativo.o: 関数内 Java_com_example_telo3_Process_inicializar_1nativo:jni\nativo.cpp C/C++ の問題

「Almacena::Almacena()」への未定義の参照 telo3 行 41、外部の場所: C:\Users\telo\Desktop\ANDROID\android-ndk-r8d\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\arm -linux-androideabi\bin\ld.exe: .\obj\local\armeabi\objs\nativo\nativo.o: 関数内 Java_com_example_telo3_Process_inicializar_1nativo:jni\nativo.cpp C/C++ の問題

4

1 に答える 1