#include <iostream>
#include <array>
#include <vector>
template <typename V, typename... T>
constexpr auto make_array(V &&v, T&&... t) -> std::array < V , sizeof...(T) + 1 >
{
return {{v, std::forward<T>(t)... }};
}
int main()
{
auto array = make_array(
make_array(make_array(1.,2.,3.,4.),make_array(5.,6.,7.,8.),make_array(9.,10.,11.,12.)),
make_array(make_array(14.,15.,16.,17.),make_array(18.,19.,20.,21.),make_array(22.,23.,24.,25.))
);
for(auto && v: array[0][2]){
std::cout << v << ',';
}
}
thread();
thread( thread&& other );
template< class Function, class... Args >
explicit thread( Function&& f, Args&&... args );
#include <iostream>
#include <string>
#include <functional>
class BaseVirtual{
private:
virtual int func(int v) = 0;
public:
int runFunc(int v){return func(v);};
virtual ~BaseVirtual() = default;
};
class MyClass: public BaseVirtual{
private:
int func(int v) override {
return v * 42;
};
public:
MyClass(){}
~MyClass(){
std::cout << "destructed MyClass" << std::endl;
};
};
class MyClass2: public BaseVirtual{
private:
int func(int v) override {
return v * 42 * 2;
};
public:
MyClass2(){}
~MyClass2(){
std::cout << "destructed MyClass2" << std::endl;
};
};
int main()
{
BaseVirtual *c = new MyClass();
std::cout << c->runFunc(2) << std::endl;
delete c;
c = new MyClass2();
std::cout << c->runFunc(2) << std::endl;
delete c;
return 0;
}
но, осознав сколько там предстоит работы
Temperature {
id: temp
value: 15
min: 10
max: 20
anchors.centerIn: parent
}
Temperature {
id: temp2
value: 20
min: 10
max: 20
anchors.left: temp.right
}
class ID3D11Buffer{};//объявим заглушку для примера
using PID3D11Buffer = ID3D11Buffer*;
using PPID3D11Buffer = PID3D11Buffer*;
int main()
{
PPID3D11Buffer* g_pVertexBuffer = new PPID3D11Buffer[42];
}
json js= R"({
"ts" : 1618405055,
"updates":
[
[6,43841776,53939],
[
4,
60002,
19,
43841776,
1509659737,
"t",
{
"from_admin":"43841776",
"title":" ... "
}
]
]
})"_json;
int v = js["updates"][1][0]; //вытаскиваем 4