如果@JsonIgnore
private Map<String, Object> additionalProperties = new HashMap<String, Object>();
@JsonAnyGetter
public Map<String, Object> getAdditionalProperties() {
return this.additionalProperties;
}
@JsonAnySetter
public void setAdditionalProperty(String name, Object value) {
this.additionalProperties.put(name, value);
}
包含main.cpp
,如果functions.h
发生更改,main.o
是否必须重新关联?
如果没有,我想知道我什么时候有这样的文件列表:
functions.h
和objects = main.o factorial.o hello.o
(定义在functions.h中声明的函数)和factorial.cpp
(定义在functions.h中声明的函数)和hello.cpp
都包含{{1 }};我有这样的规则:
main.cpp
如何指定functions.h
中只有部分文件的先决条件为$(objects): %.o: %.cpp
recipe
?如果我仅为$(objects)
:
functions.h
第二条规则是否也应用于main.o,从而不必具备必备的函数。?
答案 0 :(得分:1)
如果main.cpp
包含标题文件functions.h
,则只要main.o
更改,就应重建functions.h
。
您只需编写所需的先决条件即可指定一些应依赖于标题的文件:
objects = main.o factorial.o hello.o
$(objects): %.o: %.cpp
recipe
factorial.o hello.o: functions.h
现在,这两个.o
文件依赖于functions.h
,但main.o
却没有。
修改的
哈,这是一个经典案例,可以回答你提出的问题,而不是你想要回答的问题:)。
您可以使用filter和filter-out功能轻松完成此操作。例如,假设你有:
SOME := foo.o bar.o
ALL := $(SOME) biz.o baz.o boz.o blah.o blee.o bor.o bag.o
$(ALL): %.o: %.cpp
recipe
$(filter-out $(SOME),$(ALL)): functions.h
然而,也许你应该再往前走,问自己是否真的想要或者需要这样做。如果你真的在这里谈论C / C ++程序中的头文件,而不是别的东西,并且你真的有那么多文件,也许你应该考虑在你的makefile中添加automatic dependency generation而不是手工编写。< / p>