标签: static-reflection

C++26 中静态反射需要什么语法?

据我所知,静态反射目前在 C++26 的路线图上。

\n

反射TS提出了基于类型的语法,但同时也提出了基于值的语法。在P2560 Mat\xc3\xba\xc5\xa1 Chochl\xc4\xb1\xcc\x81k 中,对两种方法进行了比较。

\n

是否已经决定哪种方法可能标准化?

\n

c++ reflection static-reflection c++26

9
推荐指数
1
解决办法
2142
查看次数

你能让Asp.net MVC View连线编译时安全吗?

获取控制器的标准return语句:

return View("Index");
Run Code Online (Sandbox Code Playgroud)

有没有办法让这个东西编译时安全?使用静态反射或其他一些技巧?

.net c# asp.net-mvc static-reflection

6
推荐指数
1
解决办法
140
查看次数

C++:类型与标准定义的任何其他数据类型之间是否存在双射映射?

我正在开发一个大量使用静态多态性的项目。我感兴趣的一个特定用例可以通过静态反射来实现,但我们在 C++ 中仍然没有这种功能。用例看起来像这样:我有一个函数可以从二进制文件读取/写入数据结构:

template <typename data_t> void write_binary(const my_type_t<data_t>& obj)
{
    //write a binary file...
}
template <typename data_t> void read_binary(my_type_t<data_t>& obj)
{
    //read a binary file...
}
Run Code Online (Sandbox Code Playgroud)

我想强制我只能从相同类型输出的文件中读取数据,例如my_type_t<std::string>只能从 等输出的二进制文件中读取数据my_type_t<std::string>。我想要执行此操作的方法是向二进制文件添加一个小标头确定了 的专业化data_t

template <typename data_t> void write_binary(const my_type_t<data_t>& obj)
{
    //write header type_name(data_t)
    //write a binary file...
}
template <typename data_t> void read_binary(my_type_t<data_t>& obj)
{
    //read header
    //assert header == type_name(data_t)
    //read a binary file...
}
Run Code Online (Sandbox Code Playgroud)

我知道它的存在typeid(data_t).name()以及分解它的各种方法,但我想要由标准定义的东西。

所以我的确切问题是:对于任何两种类型type1_ttype2_t,是否存在任何 …

c++ static-reflection

6
推荐指数
1
解决办法
152
查看次数

标签 统计

static-reflection ×3

c++ ×2

.net ×1

asp.net-mvc ×1

c# ×1

c++26 ×1

reflection ×1