Isaac
1
hi,
I use jv function to join a K list to another k object. but vs shows error message:
Error15error LNK2019: unresolved external symbol _jv referenced in function “public: void __thiscall qcpp::QCplusplus::publish(class KdbData,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)” (?publish@QCplusplus@qcpp@@QAEXVKdbData@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
Who can tell me how to solve this prolbem?
unfortunately jv is not available on the windows builds.
As a workaround, you can use jk for appending each element.
Isaac
3
Thanks you very much.
? 2015?11?23??? UTC+8??6:02:00?Charles Skelton???
unfortunately jv is not available on the windows builds.
As a workaround, you can use jk for appending each element.
Isaac
4
So, I can use jk to join a list to another list on windows,right?
? 2015?11?23??? UTC+8??6:02:00?Charles Skelton???
unfortunately jv is not available on the windows builds.
As a workaround, you can use jk for appending each element.
yes, as in
K f(){
J i;
K x=knk(2,ki(42),ks(“hello”));
K y=knk(3,kf(3.142),kp(“world”),ki(0));
for(i=0;i<y->n;i++)
jk(&x,r1(kK(y)[i]));
r0(y);
return x;
}
or if you are writing your code loaded as a shared library into kdb+
K z=k(0,“,”,x,y,(K)0);
effbiae
7
I’m interested in why jv isn’t available on windows. It could be defined as:
K jv(Kx,K y){DO(y->n,jk(x,r1(kK(y)[i]))r0(y);Rx;} /untested
From http://code.kx.com/wiki/Cookbook/InterfacingWithC#Creating_lists:
K more=ktn(KS,2);kS(more)[0]=ss("INTC");kS(more)[1]=ss("GOOG");jv(&syms,more); // append a vector with two symbols to syms
just an oversight with exports. Future releases will have jv exported. The builtin jv is more efficient than itemwise copy.