我正在为显示所选日期之间的天数而苦苦挣扎:<input type="date" id="date" />
和今天。
基于此,我想展示一个特定的<div>
. 例如,如果从输入值的日期到我们显示的日期之间有 20 天<div id="20day"></div>
,如果有超过 20 天,我们将显示<div id="21day"></div>
。
仅使用 jQuery 就可以吗?
我正在为显示所选日期之间的天数而苦苦挣扎:<input type="date" id="date" />
和今天。
基于此,我想展示一个特定的<div>
. 例如,如果从输入值的日期到我们显示的日期之间有 20 天<div id="20day"></div>
我正在为显示所选日期之间的天数而苦苦挣扎:<input type="date" id="date" />
和今天。
基于此,我想展示一个特定的<div>
. 例如,如果从输入值的日期到我们显示的日期之间有 20 天<div id="20day"></div>
,如果有超过 20 天,我们将显示<div id="21day"></div>
。
仅使用 jQuery 就可以吗?
用于std::vector
避免必须通过原始指针、new[]
和手动管理内存delete[]
。这样做(正如您所经历的那样)容易出错,并且很容易导致内存泄漏或未定义的行为。
DbRecord
出于同样的原因,我还建议使用智能指针而不是原始指针来保存对对象的引用。您应该根据所需的所有权策略选择您的智能指针。在这里,我会假设std::shared_ptr
是合适的。
但是请注意,如果您不需要引用语义,那么您根本不应该使用指针,而是将您的容器声明为std::vector<DbRecord>
。在这里,我假设您确实需要引用语义,因为您的原始版本使用(原始)指针;但同样,如果你不这样做,不要使用指针。
因此,鉴于必要的#include
指令和using
声明:
#include <string>
#include <vector>
#include <memory>
using std::string;
using std::vector;
using std::shared_ptr;
DbRecord
以及数据结构的(未更改的)定义:
struct DbRecord {
string oName;
string oAddr;
string cName;
string cAddr;
};
您可以更改CCompanyIndex
this 的定义(如您所见,用户定义的默认构造函数和析构函数现在是多余的,您可以让编译器隐式生成它们):
class CCompanyIndex {
public:
// No more need for a user-defined default constructor and destructor!
bool Add(const string & oName,
const string & oAddr,
const string & cName,
const string & cAddr);
bool Del(const string & oName,
const string & oAddr);
bool Search(const string & oName,
const string & oAddr,
string & cName,
string & cAddr) const;
std::vector<std::shared_ptr<DbRecord>> db;
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
};
最后,请注意您不需要执行任何手动清理:
int main(int argc, char const *argv[])
{
CCompanyIndex c1;
// do something..with c1, i.e. add there some records to array
// ...
// ...
// NO NEED TO MANUALLY DELETE IT NOW!
}
尝试这个:
$('#date').change(function () {
var date1 = new Date($(this).val());
var date2 = new Date();
var diffDays = date2.getDate() - date1.getDate();
$('body').append('<div id="' + diffDays + '"></div>');
});
var selected = $('#date').val();
var today = new Date();
var diff = new Date(selected - today);
// get days
var days = diff/1000/60/60/24;
alert(days);
var days
will 包含天数。你可以继续对变量做任何你喜欢的事情。我这里刚用过alert()
。