我在配置Tomcat项目时遇到了一些问题.简而言之,我正在开发一个动态网页项目,但似乎对我运行应用程序的位置存在一些困惑.
运行以下代码
File f = new File("");
System.err.println(f.getAbsolutePath());
Run Code Online (Sandbox Code Playgroud)
产生输出C:/Eclipse恰好是我运行Eclipse的地方.通常情况下,我希望这是输出目录,但这次并非如此.
我的eclipse项目配置为将myProject/WebContent/WEB-INF/classes作为输出文件夹
如何配置到所需的目录?现在我需要使用绝对路径,这对于项目的所有成员都不起作用.
考虑一个存储一堆Date对象的类Calendar.日历旨在保存从Date继承的任何类型的对象的集合.我认为最好的方法是使用类模板,例如
template<typename D> class Calendar{
...
}
Run Code Online (Sandbox Code Playgroud)
但让我感到震惊的是,D现在实际上可以成为任何阶级.我现在的问题是,如何确保D是日期对象的子类?
我知道如何做到这一点是Java,但我仍然不熟悉C++语法.问题非常类似于某些集合只能采用实现Comparable的模板变量.然后标题看起来像
public class Calendar<D extends Date>{
...
}
Run Code Online (Sandbox Code Playgroud)
--------------------编辑:---------------------------- --------------
template参数定义日历引用的实际日期.不同的日期类型以不同的格式表示同一天.例如,如果我制作了Calendar<Gregorian>它,它将能够以其他Date格式拍摄日期,比如朱利安日历或任何其他日期格式,并以格里高利格式呈现它们.这样可以在不同日期格式的日历之间进行转换.所以,如果我有一个Calendar<Gregorian>我可以轻松地将其转换为Calendar<Julian>.那么以下是可能的:
Calendar<Gregorian> cal;
std::cout << "These events are entered as dates in
the Gregorian calendar" << std::endl;
cal.add_event("Christmas", 12, 25);
cal.add_event("Gregorian new year", 1, 1);
std::cout << cal << std::endl;
std::cout << "----" << std::endl;
std::cout << "And printed out as Julian dates" << std::endl;
Calendar<Julian>(cal);
std::cout << cal<< std::endl;
Run Code Online (Sandbox Code Playgroud)
和输出:
These events are …Run Code Online (Sandbox Code Playgroud) 然而,我再次发现自己正在努力使用C++语法.
我正在尝试迭代一般的对象列表.那就是我有一个类的对象
Event<Q>,塞进了一个std::list<Event<Q> >.
所以我试图在列表上得到一个迭代器,直觉地想到了
std::list<Event<Q> >::iterator it;
for (it = events.begin(); it != events.end(); it++) { ... }
Run Code Online (Sandbox Code Playgroud)
应该解决问题.但是,我一直收到这些错误:
..\calendar.h:48: error: expected `;' before "it"
..\calendar.h:49: error: `it' was not declared in this scope
Run Code Online (Sandbox Code Playgroud)
有这么难的原因吗?
我正在尝试使用Matlab获取Access数据库中所有表的列表.
我到目前为止使用actxobject并且可以成功运行对数据库的查询,但我在这里阅读的所有方法都失败了.
我一直收到错误消息'没有MSysObjects的读取权限'.查询在Access程序中运行正常,但我的程序的实现不允许我在那里存储查询.
所以,我的问题是:有没有办法通过Matlab列出Access数据库的所有表?
我想提取括在花括号中的所有单词,所以我有一个像这样的表达式
foo {bar} moo {mar}
Run Code Online (Sandbox Code Playgroud)
要匹配的字符串可能包含任意数量的这些单词,但我开始认为我正在以错误的方式处理此问题.
我的尝试
而且我试图将大括号分成几组,这样我就可以使用每一个匹配.所以,我做了一个正则表达式:
String rx = ".*\\{({GROUP}\\w+)\\}.*";
Run Code Online (Sandbox Code Playgroud)
注意:我正在使用JRegex语法,所以我需要逃避一些问题.
结果
我得到的结果是一个(尽管是正确的)匹配bar,而我期待两个匹配bar和mar.我误解了什么,我该如何纠正呢?我可能需要为该.部分使用其他一些量词,但我希望你也可以帮助我.
提前谢谢了!
c++ ×2
java ×2
adodb ×1
batch-file ×1
contextpath ×1
dos ×1
eclipse ×1
enterprise ×1
generics ×1
inheritance ×1
iterator ×1
matlab ×1
ms-access ×1
object ×1
polymorphism ×1
regex ×1
scripting ×1
templates ×1
tomcat ×1