在静态库项目中,我的“ myClass.h”如下所示:
import random
import math
a = "composite number"
b = "prime number"
num = random.randint(2 , 10)
print(num)
guess = str(input("tell if it is composite number or prime number: "))
for i in range (2,int(math.sqrt(num))+1):
if (num % i) == 0:
answer = a
break
else:
answer = b
if answer == guess:
print("correct answer")
else:
print("correct answer")
}
,我有定义为class myClass{
.
.
#include "tensorflow/....h" //some tensorflow header file
.
.
using tensorflow::Tensor;
.
.
void CopyTensorImage2Cv(tensorflow::Tensor &Tensor);
.
.
}
的“ myClass.cpp”。
我想创建一个静态库,因此我构建了项目并成功获取“ myClass.lib”。
现在,我使用源代码“ test.cpp”制作一个控制台应用程序以使用此lib文件。
当我添加lib文件并在“ test.cpp”旁边复制“ myClass.h”并生成项目时,Visual Studio会引发一个无法理解CopyTensorImage2Cv()
和#include "tensorflow/....h"
在这种情况下,我想使用一个静态库在其头文件中使用另一个库,该怎么办?
答案 0 :(得分:0)
我找到了解决方案, 我使用转发声明来避免在头文件中使用#include。 这个对我有用。 有关更多详细信息,您可以在头文件中搜索转发声明。 例如,在这种情况下,我使用以下代码:
namespace tensorflow{
class Tensor;
};