我有兴趣研究最近被接受的contract programming for C++20以便进行学习和调查。
在寻找编译器支持时,我很失望找不到任何东西。 gcc
和clang
都非常清楚,它们在其--std=c++2a
模式下不支持此功能。
由于该批准是最近才批准的,所以对于当前的编译器不支持所建议的确切语义,我并不感到惊讶。不过,令我感到惊讶的是,绝对没有任何东西,甚至没有编译器特定的扩展,它甚至可以以有限的方式模仿相同的功能。
我希望C ++委员会只考虑通过编译器或特定于目标扩展的特性在现场证明自己的功能。批准用于C ++ 20的此功能表明该功能应可在某处访问。但是到目前为止,我一直找不到它。
目前是否可以尝试C ++合约编程?甚至使用一组特定于编译器的扩展?