要不就使用内部类
要不就在Customer里面定义一个Cart类的对象。
也可以把你需要的方法定义成静态方法
public
static
void
xxxx();
Classxxxx();来调用。。。
1为了使c能调用c++写的dll。c++中使用extern
"c"{
}修饰该接口即可
这个原因你应该知道吧大概意思是告诉c++编译器这段代码用c编译器编译
编译之后的结果是c方式的而不是c++方式的。
2但是c中不识别extern
"c"。
综上两点,在dll头文件中常这样写,如下:
意思就是编译的时候编译成c方式。但是包含头文件时,因为是c调用所以会忽略掉extern
"c"
#ifdef
__cplusplus
extern
"c"
{
#endif
。。。。。。。。。。。。
#ifdef
__cplusplus
}
#endif
这个你也明白吧。
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
配置环境变量后才可以
我的电脑点右键,选择“属性”,选择“高级”标签,进入环境变量设置,分别设置如下三个环境变量:
设置JAVA_HOME:
一是为了方便引用,比如,JDK安装在C:\jdk160目录里,则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候, 只需输入%JAVA_HOME%即可, 避免每次引用都输入很长的路径串;
二则是归一原则, 当JDK路径改变的时候, 仅需更改JAVA_HOME的变量值即可, 否则,就要更改任何用绝对路径引用JDK目录的文档, 要是万一没有改全, 某个程序找不到JDK, 后果是可想而知的----系统崩溃!
三则是第三方软件会引用约定好的JAVA_HOME变量, 不然, 你不能正常使用该软件
在系统环境变量那一栏中点->新建JAVA_HOME (JAVA_HOME指向的是JDK的安装路径)
变量名: JAVA_HOME
变量值: C:\jdk160
(1)设置好path变量,使得我们能够在系统中的任何地方运行java应用程序,比如javac、java、javah等等,这就要找到我们安装JDK的目录,
假设我们的JDK安装在C:\jdk160目录下,那么在C: \jdk160\bin目录下就是我们常用的java应用程序,我们就需要把C:\jdk160\bin这个目录加到path环境变量里面。
在系统变量里找到path变量,选择->编辑;(里面已经有很多的变量值,是在变量值的最前面加上C:\jdk160\bin; 如果没有 就新建一个 但是 一般都会有的)
变量名: path
变量值: C:\jdk160\bin;
或 %JAVA_HOME%\bin;
(2)classpath环境变量,是当我们在开发java程序时需要引用别人写好的类时,要让java解释器知道到哪里去找这个类。通常,sun为我们提供了一些额外的丰富的类包,一个是dtjar,一个是toolsjar,这两个jar包都位于C:\jdk160\lib目录下,所以通常我们都会把这两个jar包加到我们的classpath环境变量中set classpath=;C:\jdk160\lib\toolsjar;C:\jdk160\lib\dtjar。
在系统环境变量那一栏中点->新建classpath
变量名: classpath
变量值: ;C:\jdk160\lib\toolsjar;C:\jdk160\lib\dtjar;
或 ;%JAVA_HOME%\lib\toolsjar;%JAVA_HOME%\lib\dtjar;
(注意,CLASSPATH 中最前面是有个 “”的,表示当前目录,这样当我们运行java AClass的时候,系统就会先在当前目录寻找AClass文件了。)
以上就是关于JAVA怎么调用C写的接口函数全部的内容,包括:JAVA怎么调用C写的接口函数、java是怎么调用c、c++的dll的、java如何调用javac命令等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)