我是一名编程学生,偶尔会遇到以下参考:通用 C,这是否意味着只是简单的经典 C?
“任何严肃软件中结构的通用 c/c++ 实现”
它通常出现在诸如此类的上下文中;我很确定我只是误读了诸如 (generic c)/c++ 而不是:generic (c/c++) 之类的引用。看起来它可能指的是一组库。感谢你的回复。
一般来说(双关语)意味着使用它的来源并不可信。这仍然适用于“通用 C”。
“任何严肃软件中结构的通用 c/c++ 实现”
:)
这不是关于通用 C 或通用 C++,而是关于可以用 C 或 C++ 编译的代码结构的通用实现。
这是英语的歧义。
我不认为对“通用 C”一词有一个完善的解释。它当然不是一个正式的或技术性的术语,所以你只需要尝试从上下文中推断出作者的意图。
我最好的猜测是它可能通常意味着非平台特定的 C,在这种情况下,它适用于 C++ 和 C 一样多。
通用方法的示例是
template<typename T, size_t N>
struct array {
T e[N];
T* begin() {return e;}
T* end() {return e+N;}
size_t size() const {return N;}
};
...
array<int, 2> a1 = {1, 2};
array<double, 2> a2 = {10.0, 2.0};
如您所见,数组定义与类型和大小无关。这样的结构/函数被命名为“通用”。因此,任何使用这种方法的技术都可以称为“通用”。